diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/SharedLauncherActivity.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/SharedLauncherActivity.kt index 731ea88e..86ee1fae 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/SharedLauncherActivity.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/SharedLauncherActivity.kt @@ -138,6 +138,7 @@ abstract class SharedLauncherActivity( val gestures by viewModel.gestureState.collectAsState() val searchBarStyle by viewModel.searchBarStyle.collectAsState() val searchBarColor by viewModel.searchBarColor.collectAsState() + val searchBarAutofocus by viewModel.autoFocusSearch.collectAsState(false) val widgetsOnHomeScreen by viewModel.widgetsOnHomeScreen.collectAsState() val fixedRotation by viewModel.fixedRotation.collectAsState() @@ -218,10 +219,12 @@ abstract class SharedLauncherActivity( hideStatus, hideNav, widgetsOnHomeScreen, + searchBarAutofocus, ) { if (mode == LauncherActivityMode.Assistant) { val searchComponent = SearchComponent( reverse = reverseSearchResults, + openKeyboard = searchBarAutofocus, ) val dismissComponent = DismissComponent(this@SharedLauncherActivity) @@ -245,6 +248,7 @@ abstract class SharedLauncherActivity( } else { val searchComponent = SearchComponent( reverse = reverseSearchResults, + openKeyboard = searchBarAutofocus, ) val widgetComponent by lazy { WidgetsComponent } diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/scaffold/SearchComponent.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/scaffold/SearchComponent.kt index e8414b52..ddbcfcab 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/scaffold/SearchComponent.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/launcher/scaffold/SearchComponent.kt @@ -21,6 +21,7 @@ import de.mm20.launcher2.ui.launcher.search.SearchVM internal class SearchComponent( private val reverse: Boolean = false, + private val openKeyboard: Boolean = true, ) : ScaffoldComponent() { override val isAtTop: MutableState = mutableStateOf(true) @@ -84,7 +85,9 @@ internal class SearchComponent( override suspend fun onPreActivate(state: LauncherScaffoldState) { super.onPreActivate(state) - state.isSearchBarFocused = true + if (openKeyboard) { + state.isSearchBarFocused = true + } } override suspend fun onPreDismiss(state: LauncherScaffoldState) {