feat(navigation): Allow clearing search when Back on Extensions Screen (#1506)

This commit is contained in:
Cuong-Tran 2025-10-10 12:00:00 +07:00
parent a09e55270c
commit 78f9cf65c0
2 changed files with 10 additions and 7 deletions

View file

@ -1,5 +1,6 @@
package eu.kanade.tachiyomi.ui.browse.extension package eu.kanade.tachiyomi.ui.browse.extension
import androidx.activity.compose.BackHandler
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.outlined._18UpRating import androidx.compose.material.icons.outlined._18UpRating
import androidx.compose.material3.AlertDialog import androidx.compose.material3.AlertDialog
@ -66,6 +67,9 @@ fun extensionsTab(
), ),
), ),
content = { contentPadding, _ -> content = { contentPadding, _ ->
BackHandler(enabled = state.searchQuery != null) {
extensionsScreenModel.search(null)
}
ExtensionScreen( ExtensionScreen(
state = state, state = state,
contentPadding = contentPadding, contentPadding = contentPadding,

View file

@ -58,13 +58,6 @@ fun Screen.feedTab(
val haptic = LocalHapticFeedback.current val haptic = LocalHapticFeedback.current
BackHandler(enabled = bulkFavoriteState.selectionMode || showingFeedOrderScreen.value) {
when {
bulkFavoriteState.selectionMode -> bulkFavoriteScreenModel.backHandler()
showingFeedOrderScreen.value -> showingFeedOrderScreen.value = false
}
}
LaunchedEffect(bulkFavoriteState.selectionMode) { LaunchedEffect(bulkFavoriteState.selectionMode) {
HomeScreen.showBottomNav(!bulkFavoriteState.selectionMode) HomeScreen.showBottomNav(!bulkFavoriteState.selectionMode)
} }
@ -122,6 +115,12 @@ fun Screen.feedTab(
}, },
content = { contentPadding, snackbarHostState -> content = { contentPadding, snackbarHostState ->
// KMK --> // KMK -->
BackHandler(enabled = bulkFavoriteState.selectionMode || showingFeedOrderScreen.value) {
when {
bulkFavoriteState.selectionMode -> bulkFavoriteScreenModel.backHandler()
showingFeedOrderScreen.value -> showingFeedOrderScreen.value = false
}
}
Crossfade( Crossfade(
targetState = showingFeedOrderScreen.value, targetState = showingFeedOrderScreen.value,
label = "feed_order_crossfade", label = "feed_order_crossfade",