fix(search): drop the open article when the query is cleared
This commit is contained in:
1 parent
114eb78bc2
commit
05b80f21f4
1 file changed
+4
@@ -122,6 +122,7 @@ class SearchViewModel(
|
|||||||
SearchAction.ClearQuery -> {
|
SearchAction.ClearQuery -> {
|
||||||
mutableSearchQuery.value = ""
|
mutableSearchQuery.value = ""
|
||||||
savedStateHandle[KEY_SEARCH_QUERY] = ""
|
savedStateHandle[KEY_SEARCH_QUERY] = ""
|
||||||
|
clearArticle()
|
||||||
}
|
}
|
||||||
is SearchAction.ArticleClicked -> {
|
is SearchAction.ArticleClicked -> {
|
||||||
articleHistory.clear()
|
articleHistory.clear()
|
||||||
@@ -136,6 +137,9 @@ class SearchViewModel(
|
|||||||
fun onSearchQueryChanged(query: String) {
|
fun onSearchQueryChanged(query: String) {
|
||||||
val sanitized = query.sanitizeQuery().trim()
|
val sanitized = query.sanitizeQuery().trim()
|
||||||
mutableSearchQuery.value = sanitized
|
mutableSearchQuery.value = sanitized
|
||||||
|
if (sanitized.isBlank()) {
|
||||||
|
clearArticle()
|
||||||
|
}
|
||||||
// Debounce SavedStateHandle writes to reduce disk I/O
|
// Debounce SavedStateHandle writes to reduce disk I/O
|
||||||
debounceSaveQueryJob?.cancel()
|
debounceSaveQueryJob?.cancel()
|
||||||
debounceSaveQueryJob = viewModelScope.launch {
|
debounceSaveQueryJob = viewModelScope.launch {
|
||||||
|
|||||||
Reference in new issue
Block a user