diff --git a/app/src/main/java/helium314/keyboard/settings/SearchScreen.kt b/app/src/main/java/helium314/keyboard/settings/SearchScreen.kt index 1d7608e9..8fd287bf 100644 --- a/app/src/main/java/helium314/keyboard/settings/SearchScreen.kt +++ b/app/src/main/java/helium314/keyboard/settings/SearchScreen.kt @@ -33,7 +33,6 @@ import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember -import androidx.compose.runtime.saveable.rememberSaveable import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.draw.rotate @@ -107,9 +106,12 @@ fun SearchScreen( menu: List Unit>>? = null, content: @Composable (ColumnScope.() -> Unit)? = null, ) { - var searchText by rememberSaveable(stateSaver = TextFieldValue.Saver) { mutableStateOf(TextFieldValue()) } + // searchText and showSearch should have the same remember or rememberSaveable + // saveable survives orientation changes and switching between screens, but shows the + // keyboard in unexpected situations such as going back from another screen, which is rather annoying + var searchText by remember { mutableStateOf(TextFieldValue()) } + var showSearch by remember { mutableStateOf(false) } Column(Modifier.fillMaxSize()) { - var showSearch by remember { mutableStateOf(false) } fun setShowSearch(value: Boolean) { showSearch = value