From 0af6ac3cf4c8d7e7077f8e0b44905ab34a0e011f Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Sat, 4 Jan 2025 16:22:51 -0600 Subject: [PATCH] Prevent menu search bar from auto focusing --- .../org/tasks/compose/components/SearchBar.kt | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/kmp/src/commonMain/kotlin/org/tasks/compose/components/SearchBar.kt b/kmp/src/commonMain/kotlin/org/tasks/compose/components/SearchBar.kt index 0142d4ec4..288fadc4d 100644 --- a/kmp/src/commonMain/kotlin/org/tasks/compose/components/SearchBar.kt +++ b/kmp/src/commonMain/kotlin/org/tasks/compose/components/SearchBar.kt @@ -14,7 +14,13 @@ import androidx.compose.material3.OutlinedTextField import androidx.compose.material3.OutlinedTextFieldDefaults import androidx.compose.material3.Text import androidx.compose.runtime.Composable +import androidx.compose.runtime.LaunchedEffect +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier +import androidx.compose.ui.focus.focusProperties import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.unit.dp @@ -27,9 +33,14 @@ fun SearchBar( onCloseClicked: () -> Unit, onSearchClicked: (String) -> Unit, ) { + var canFocus by remember { mutableStateOf(false) } OutlinedTextField( shape = MaterialTheme.shapes.medium, - modifier = modifier.height(56.dp), + modifier = modifier + .height(56.dp) + .focusProperties { + this.canFocus = canFocus + }, value = text, onValueChange = { onTextChange(it) @@ -76,4 +87,7 @@ fun SearchBar( cursorColor = MaterialTheme.colorScheme.onSurface, ), ) + LaunchedEffect(Unit) { + canFocus = true + } }