Clean focus / hide keyboard on detail
This commit is contained in:
parent
d7cb0221a4
commit
5aaa3e325d
1 changed files with 8 additions and 1 deletions
|
|
@ -20,12 +20,15 @@ import androidx.compose.material.icons.filled.Person
|
||||||
import androidx.compose.material.icons.filled.Search
|
import androidx.compose.material.icons.filled.Search
|
||||||
import androidx.compose.runtime.*
|
import androidx.compose.runtime.*
|
||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
|
import androidx.compose.ui.ExperimentalComposeUiApi
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.draw.clip
|
import androidx.compose.ui.draw.clip
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.layout.ContentScale
|
import androidx.compose.ui.layout.ContentScale
|
||||||
import androidx.compose.ui.platform.LocalContext
|
import androidx.compose.ui.platform.LocalContext
|
||||||
|
import androidx.compose.ui.platform.LocalFocusManager
|
||||||
import androidx.compose.ui.platform.LocalLayoutDirection
|
import androidx.compose.ui.platform.LocalLayoutDirection
|
||||||
|
import androidx.compose.ui.platform.LocalSoftwareKeyboardController
|
||||||
import androidx.compose.ui.res.painterResource
|
import androidx.compose.ui.res.painterResource
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
|
|
@ -70,7 +73,7 @@ sealed class HomeScreenErrorUio(
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@OptIn(ExperimentalMaterialApi::class)
|
@OptIn(ExperimentalMaterialApi::class, ExperimentalComposeUiApi::class)
|
||||||
@Composable
|
@Composable
|
||||||
fun HomeScreen(
|
fun HomeScreen(
|
||||||
bookViewModel: BookSearchViewModel = hiltViewModel(),
|
bookViewModel: BookSearchViewModel = hiltViewModel(),
|
||||||
|
|
@ -80,6 +83,8 @@ fun HomeScreen(
|
||||||
val context = LocalContext.current
|
val context = LocalContext.current
|
||||||
val navigation = LocalScreenNavHostController.current
|
val navigation = LocalScreenNavHostController.current
|
||||||
val snackBarHost = LocalSnackHostState.current
|
val snackBarHost = LocalSnackHostState.current
|
||||||
|
val focus = LocalFocusManager.current
|
||||||
|
val keyboard = LocalSoftwareKeyboardController.current
|
||||||
val detailState: DetailBottomSheetState = rememberDetailBottomSheetState()
|
val detailState: DetailBottomSheetState = rememberDetailBottomSheetState()
|
||||||
val filterState: FilterBottomSheetState = rememberFilterBottomSheetState()
|
val filterState: FilterBottomSheetState = rememberFilterBottomSheetState()
|
||||||
val sortingState: SortBottomSheetState = rememberSortBottomSheetState()
|
val sortingState: SortBottomSheetState = rememberSortBottomSheetState()
|
||||||
|
|
@ -144,6 +149,8 @@ fun HomeScreen(
|
||||||
microListState = microListState,
|
microListState = microListState,
|
||||||
microList = bookViewModel.microPaging,
|
microList = bookViewModel.microPaging,
|
||||||
onBook = {
|
onBook = {
|
||||||
|
focus.clearFocus(force = true)
|
||||||
|
keyboard?.hide()
|
||||||
scope.launch {
|
scope.launch {
|
||||||
detailState.expandBookDetail(id = it)
|
detailState.expandBookDetail(id = it)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue