refactor(navigation): Add navigateUp functionality to SourceFeedScreen and SourceFeedToolbar
directly navigate back instead of just close search bar
This commit is contained in:
parent
c92fdb5231
commit
c49c4c9c6d
2 changed files with 11 additions and 8 deletions
|
|
@ -110,6 +110,7 @@ fun SourceFeedScreen(
|
|||
onSearchQueryChange: (String?) -> Unit,
|
||||
getMangaState: @Composable (Manga) -> State<Manga>,
|
||||
// KMK -->
|
||||
navigateUp: () -> Unit,
|
||||
onWebViewClick: () -> Unit,
|
||||
sourceId: Long,
|
||||
onLongClickManga: (Manga) -> Unit,
|
||||
|
|
@ -147,6 +148,7 @@ fun SourceFeedScreen(
|
|||
scrollBehavior = scrollBehavior,
|
||||
onClickSearch = onClickSearch,
|
||||
// KMK -->
|
||||
navigateUp = navigateUp,
|
||||
onWebViewClick = onWebViewClick,
|
||||
sourceId = sourceId,
|
||||
toggleSelectionMode = bulkFavoriteScreenModel::toggleSelectionMode,
|
||||
|
|
@ -280,6 +282,7 @@ fun SourceFeedToolbar(
|
|||
scrollBehavior: TopAppBarScrollBehavior,
|
||||
onClickSearch: (String) -> Unit,
|
||||
// KMK -->
|
||||
navigateUp: () -> Unit,
|
||||
onWebViewClick: () -> Unit,
|
||||
sourceId: Long,
|
||||
toggleSelectionMode: () -> Unit,
|
||||
|
|
@ -290,7 +293,10 @@ fun SourceFeedToolbar(
|
|||
searchQuery = searchQuery,
|
||||
onChangeSearchQuery = onSearchQueryChange,
|
||||
onSearch = onClickSearch,
|
||||
onClickCloseSearch = { onSearchQueryChange(null) },
|
||||
// KMK -->
|
||||
navigateUp = navigateUp,
|
||||
onClickCloseSearch = navigateUp,
|
||||
// KMK <--
|
||||
scrollBehavior = scrollBehavior,
|
||||
placeholderText = stringResource(MR.strings.action_search_hint),
|
||||
// KMK -->
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ class SourceFeedScreen(val sourceId: Long) : Screen() {
|
|||
onSearchQueryChange = screenModel::search,
|
||||
getMangaState = { screenModel.getManga(initialManga = it) },
|
||||
// KMK -->
|
||||
navigateUp = { navigator.pop() },
|
||||
onWebViewClick = {
|
||||
val source = screenModel.source as? HttpSource ?: return@SourceFeedScreen
|
||||
navigator.push(
|
||||
|
|
@ -223,14 +224,10 @@ class SourceFeedScreen(val sourceId: Long) : Screen() {
|
|||
}
|
||||
// KMK <--
|
||||
|
||||
BackHandler(state.searchQuery != null || bulkFavoriteState.selectionMode) {
|
||||
BackHandler(bulkFavoriteState.selectionMode) {
|
||||
// KMK -->
|
||||
if (bulkFavoriteState.selectionMode) {
|
||||
bulkFavoriteScreenModel.backHandler()
|
||||
} else {
|
||||
// KMK <--
|
||||
screenModel.search(null)
|
||||
}
|
||||
bulkFavoriteScreenModel.backHandler()
|
||||
// KMK <--
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue