Add back option to hide Updates count (#8709)

Adds back the option to hide the updates count on the Updates tab
This commit is contained in:
Soitora 2022-12-09 23:25:06 +01:00 committed by GitHub
parent 82a3a98a5a
commit 8937e22ce4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 15 additions and 2 deletions

View file

@ -60,6 +60,7 @@ class LibraryPreferences(
fun languageBadge() = preferenceStore.getBoolean("display_language_badge", false) fun languageBadge() = preferenceStore.getBoolean("display_language_badge", false)
fun newShowUpdatesCount() = preferenceStore.getBoolean("library_show_updates_count", true)
fun newUpdatesCount() = preferenceStore.getInt("library_unseen_updates_count", 0) fun newUpdatesCount() = preferenceStore.getInt("library_unseen_updates_count", 0)
// endregion // endregion

View file

@ -37,6 +37,13 @@ object SettingsGeneralScreen : SearchableSettings {
val prefs = remember { Injekt.get<BasePreferences>() } val prefs = remember { Injekt.get<BasePreferences>() }
val libraryPrefs = remember { Injekt.get<LibraryPreferences>() } val libraryPrefs = remember { Injekt.get<LibraryPreferences>() }
return mutableListOf<Preference>().apply { return mutableListOf<Preference>().apply {
add(
Preference.PreferenceItem.SwitchPreference(
pref = libraryPrefs.newShowUpdatesCount(),
title = stringResource(R.string.pref_library_update_show_tab_badge),
),
)
add( add(
Preference.PreferenceItem.SwitchPreference( Preference.PreferenceItem.SwitchPreference(
pref = prefs.confirmExit(), pref = prefs.confirmExit(),

View file

@ -53,6 +53,7 @@ import eu.kanade.tachiyomi.ui.more.MoreTab
import eu.kanade.tachiyomi.ui.updates.UpdatesTab import eu.kanade.tachiyomi.ui.updates.UpdatesTab
import kotlinx.coroutines.channels.Channel import kotlinx.coroutines.channels.Channel
import kotlinx.coroutines.flow.collectLatest import kotlinx.coroutines.flow.collectLatest
import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.receiveAsFlow import kotlinx.coroutines.flow.receiveAsFlow
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import soup.compose.material.motion.animation.materialFadeThroughIn import soup.compose.material.motion.animation.materialFadeThroughIn
@ -233,8 +234,11 @@ object HomeScreen : Screen {
when { when {
tab is UpdatesTab -> { tab is UpdatesTab -> {
val count by produceState(initialValue = 0) { val count by produceState(initialValue = 0) {
Injekt.get<LibraryPreferences>() val pref = Injekt.get<LibraryPreferences>()
.newUpdatesCount().changes() combine(
pref.newShowUpdatesCount().changes(),
pref.newUpdatesCount().changes(),
) { show, count -> if (show) count else 0 }
.collectLatest { value = it } .collectLatest { value = it }
} }
if (count > 0) { if (count > 0) {

View file

@ -254,6 +254,7 @@
<string name="pref_update_only_completely_read">With unread chapter(s)</string> <string name="pref_update_only_completely_read">With unread chapter(s)</string>
<string name="pref_update_only_non_completed">With \"Completed\" status</string> <string name="pref_update_only_non_completed">With \"Completed\" status</string>
<string name="pref_update_only_started">That haven\'t been started</string> <string name="pref_update_only_started">That haven\'t been started</string>
<string name="pref_library_update_show_tab_badge">Show unread count on Updates icon</string>
<string name="pref_library_update_refresh_metadata">Automatically refresh metadata</string> <string name="pref_library_update_refresh_metadata">Automatically refresh metadata</string>
<string name="pref_library_update_refresh_metadata_summary">Check for new cover and details when updating library</string> <string name="pref_library_update_refresh_metadata_summary">Check for new cover and details when updating library</string>
<string name="pref_library_update_refresh_trackers">Automatically refresh trackers</string> <string name="pref_library_update_refresh_trackers">Automatically refresh trackers</string>