make global search pinned/all sticky
This commit is contained in:
parent
3decc8b86f
commit
6bb8535af4
2 changed files with 14 additions and 1 deletions
|
|
@ -1,6 +1,7 @@
|
|||
package eu.kanade.domain.source.service
|
||||
|
||||
import eu.kanade.domain.source.interactor.SetMigrateSorting
|
||||
import eu.kanade.tachiyomi.ui.browse.source.globalsearch.SourceFilter
|
||||
import eu.kanade.tachiyomi.util.system.LocaleHelper
|
||||
import tachiyomi.core.common.preference.Preference
|
||||
import tachiyomi.core.common.preference.PreferenceStore
|
||||
|
|
@ -56,6 +57,11 @@ class SourcePreferences(
|
|||
)
|
||||
|
||||
// KMK -->
|
||||
fun globalSearchPinnedState() = preferenceStore.getEnum(
|
||||
Preference.appStateKey("global_search_pinned_toggle_state"),
|
||||
SourceFilter.PinnedOnly,
|
||||
)
|
||||
|
||||
fun disabledRepos() = preferenceStore.getStringSet("disabled_repos", emptySet())
|
||||
// KMK <--
|
||||
|
||||
|
|
|
|||
|
|
@ -70,6 +70,13 @@ abstract class SearchScreenModel(
|
|||
mutableState.update { it.copy(onlyShowHasResults = state) }
|
||||
}
|
||||
}
|
||||
// KMK -->
|
||||
screenModelScope.launch {
|
||||
preferences.globalSearchPinnedState().changes().collectLatest { state ->
|
||||
mutableState.update { it.copy(sourceFilter = state) }
|
||||
}
|
||||
}
|
||||
// KMK <--
|
||||
}
|
||||
|
||||
@Composable
|
||||
|
|
@ -117,7 +124,7 @@ abstract class SearchScreenModel(
|
|||
}
|
||||
|
||||
fun setSourceFilter(filter: SourceFilter) {
|
||||
mutableState.update { it.copy(sourceFilter = filter) }
|
||||
preferences.globalSearchPinnedState().set(filter)
|
||||
search()
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue