diff --git a/lib/screens/main_screen.dart b/lib/screens/main_screen.dart index 51bd9ad1..217d9dee 100644 --- a/lib/screens/main_screen.dart +++ b/lib/screens/main_screen.dart @@ -706,6 +706,19 @@ class _MainScreenState extends State with RouteAware, WindowListener } }); } + // When content regains focus while on Search, focus the search input + final searchIndex = NavigationTab.indexFor( + NavigationTabId.search, + isOffline: _isOffline, + hasLiveTv: _hasLiveTv, + ); + if (_currentIndex == searchIndex && searchIndex >= 0) { + WidgetsBinding.instance.addPostFrameCallback((_) { + if (_searchKey.currentState case final SearchInputFocusable searchable) { + searchable.focusSearchInput(); + } + }); + } } /// Suppress stray back events after a child route pops.