|
|
@ -62,6 +62,7 @@ import androidx.compose.ui.input.key.Key
|
|
|
|
import androidx.compose.ui.input.key.key
|
|
|
|
import androidx.compose.ui.input.key.key
|
|
|
|
import androidx.compose.ui.input.key.onKeyEvent
|
|
|
|
import androidx.compose.ui.input.key.onKeyEvent
|
|
|
|
import androidx.compose.ui.platform.LocalSoftwareKeyboardController
|
|
|
|
import androidx.compose.ui.platform.LocalSoftwareKeyboardController
|
|
|
|
|
|
|
|
import androidx.compose.ui.platform.SoftwareKeyboardController
|
|
|
|
import androidx.compose.ui.platform.testTag
|
|
|
|
import androidx.compose.ui.platform.testTag
|
|
|
|
import androidx.compose.ui.res.stringResource
|
|
|
|
import androidx.compose.ui.res.stringResource
|
|
|
|
import androidx.compose.ui.text.AnnotatedString
|
|
|
|
import androidx.compose.ui.text.AnnotatedString
|
|
|
@ -447,11 +448,18 @@ private fun SearchToolbar(
|
|
|
|
onBackClick: () -> Unit,
|
|
|
|
onBackClick: () -> Unit,
|
|
|
|
modifier: Modifier = Modifier,
|
|
|
|
modifier: Modifier = Modifier,
|
|
|
|
) {
|
|
|
|
) {
|
|
|
|
|
|
|
|
val keyboardController = LocalSoftwareKeyboardController.current
|
|
|
|
|
|
|
|
|
|
|
|
Row(
|
|
|
|
Row(
|
|
|
|
verticalAlignment = Alignment.CenterVertically,
|
|
|
|
verticalAlignment = Alignment.CenterVertically,
|
|
|
|
modifier = modifier.fillMaxWidth(),
|
|
|
|
modifier = modifier.fillMaxWidth(),
|
|
|
|
) {
|
|
|
|
) {
|
|
|
|
IconButton(onClick = { onBackClick() }) {
|
|
|
|
IconButton(
|
|
|
|
|
|
|
|
onClick = {
|
|
|
|
|
|
|
|
keyboardController?.hide()
|
|
|
|
|
|
|
|
onBackClick()
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
) {
|
|
|
|
Icon(
|
|
|
|
Icon(
|
|
|
|
imageVector = NiaIcons.ArrowBack,
|
|
|
|
imageVector = NiaIcons.ArrowBack,
|
|
|
|
contentDescription = stringResource(
|
|
|
|
contentDescription = stringResource(
|
|
|
@ -463,6 +471,7 @@ private fun SearchToolbar(
|
|
|
|
onSearchQueryChanged = onSearchQueryChanged,
|
|
|
|
onSearchQueryChanged = onSearchQueryChanged,
|
|
|
|
onSearchTriggered = onSearchTriggered,
|
|
|
|
onSearchTriggered = onSearchTriggered,
|
|
|
|
searchQuery = searchQuery,
|
|
|
|
searchQuery = searchQuery,
|
|
|
|
|
|
|
|
keyboardController = keyboardController
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -470,11 +479,11 @@ private fun SearchToolbar(
|
|
|
|
@Composable
|
|
|
|
@Composable
|
|
|
|
private fun SearchTextField(
|
|
|
|
private fun SearchTextField(
|
|
|
|
searchQuery: String,
|
|
|
|
searchQuery: String,
|
|
|
|
|
|
|
|
keyboardController: SoftwareKeyboardController?,
|
|
|
|
onSearchQueryChanged: (String) -> Unit,
|
|
|
|
onSearchQueryChanged: (String) -> Unit,
|
|
|
|
onSearchTriggered: (String) -> Unit,
|
|
|
|
onSearchTriggered: (String) -> Unit,
|
|
|
|
) {
|
|
|
|
) {
|
|
|
|
val focusRequester = remember { FocusRequester() }
|
|
|
|
val focusRequester = remember { FocusRequester() }
|
|
|
|
val keyboardController = LocalSoftwareKeyboardController.current
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
val onSearchExplicitlyTriggered = {
|
|
|
|
val onSearchExplicitlyTriggered = {
|
|
|
|
keyboardController?.hide()
|
|
|
|
keyboardController?.hide()
|
|
|
|