Move unread chapters badge setting to General section
This commit is contained in:
parent
90b312a56e
commit
709de81814
9 changed files with 19 additions and 15 deletions
|
@ -291,7 +291,7 @@ class LibraryUpdateService(
|
||||||
val failedUpdates = CopyOnWriteArrayList<Pair<Manga, String?>>()
|
val failedUpdates = CopyOnWriteArrayList<Pair<Manga, String?>>()
|
||||||
val hasDownloads = AtomicBoolean(false)
|
val hasDownloads = AtomicBoolean(false)
|
||||||
val loggedServices by lazy { trackManager.services.filter { it.isLogged } }
|
val loggedServices by lazy { trackManager.services.filter { it.isLogged } }
|
||||||
val currentUnreadUpdatesCount = preferences.libraryUnreadUpdatesCount().get()
|
val currentUnreadUpdatesCount = preferences.unreadUpdatesCount().get()
|
||||||
|
|
||||||
withIOContext {
|
withIOContext {
|
||||||
mangaToUpdate.groupBy { it.source }
|
mangaToUpdate.groupBy { it.source }
|
||||||
|
@ -356,7 +356,7 @@ class LibraryUpdateService(
|
||||||
if (newUpdates.isNotEmpty()) {
|
if (newUpdates.isNotEmpty()) {
|
||||||
notifier.showUpdateNotifications(newUpdates)
|
notifier.showUpdateNotifications(newUpdates)
|
||||||
val newChapterCount = newUpdates.sumOf { it.second.size }
|
val newChapterCount = newUpdates.sumOf { it.second.size }
|
||||||
preferences.libraryUnreadUpdatesCount().set(currentUnreadUpdatesCount + newChapterCount)
|
preferences.unreadUpdatesCount().set(currentUnreadUpdatesCount + newChapterCount)
|
||||||
if (hasDownloads.get()) {
|
if (hasDownloads.get()) {
|
||||||
DownloadService.start(this)
|
DownloadService.start(this)
|
||||||
}
|
}
|
||||||
|
|
|
@ -133,7 +133,7 @@ object PreferenceKeys {
|
||||||
|
|
||||||
const val libraryUpdateRestriction = "library_update_restriction"
|
const val libraryUpdateRestriction = "library_update_restriction"
|
||||||
|
|
||||||
const val libraryUpdateShowTabBadge = "library_update_show_tab_badge"
|
const val showUpdatesNavBadge = "library_update_show_tab_badge"
|
||||||
|
|
||||||
const val libraryUpdateCategories = "library_update_categories"
|
const val libraryUpdateCategories = "library_update_categories"
|
||||||
const val libraryUpdateCategoriesExclude = "library_update_categories_exclude"
|
const val libraryUpdateCategoriesExclude = "library_update_categories_exclude"
|
||||||
|
|
|
@ -238,8 +238,8 @@ class PreferencesHelper(val context: Context) {
|
||||||
|
|
||||||
fun libraryUpdateRestriction() = flowPrefs.getStringSet(Keys.libraryUpdateRestriction, setOf(ONLY_ON_WIFI))
|
fun libraryUpdateRestriction() = flowPrefs.getStringSet(Keys.libraryUpdateRestriction, setOf(ONLY_ON_WIFI))
|
||||||
|
|
||||||
fun libraryUpdateShowTabBadge() = flowPrefs.getBoolean(Keys.libraryUpdateShowTabBadge, true)
|
fun showUpdatesNavBadge() = flowPrefs.getBoolean(Keys.showUpdatesNavBadge, true)
|
||||||
fun libraryUnreadUpdatesCount() = flowPrefs.getInt("library_unread_updates_count", 0)
|
fun unreadUpdatesCount() = flowPrefs.getInt("library_unread_updates_count", 0)
|
||||||
|
|
||||||
fun libraryUpdateCategories() = flowPrefs.getStringSet(Keys.libraryUpdateCategories, emptySet())
|
fun libraryUpdateCategories() = flowPrefs.getStringSet(Keys.libraryUpdateCategories, emptySet())
|
||||||
fun libraryUpdateCategoriesExclude() = flowPrefs.getStringSet(Keys.libraryUpdateCategoriesExclude, emptySet())
|
fun libraryUpdateCategoriesExclude() = flowPrefs.getStringSet(Keys.libraryUpdateCategoriesExclude, emptySet())
|
||||||
|
|
|
@ -228,7 +228,7 @@ class MainActivity : BaseViewBindingActivity<MainActivityBinding>() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
merge(preferences.libraryUpdateShowTabBadge().asFlow(), preferences.libraryUnreadUpdatesCount().asFlow())
|
merge(preferences.showUpdatesNavBadge().asFlow(), preferences.unreadUpdatesCount().asFlow())
|
||||||
.onEach { setUnreadUpdatesBadge() }
|
.onEach { setUnreadUpdatesBadge() }
|
||||||
.launchIn(lifecycleScope)
|
.launchIn(lifecycleScope)
|
||||||
|
|
||||||
|
@ -355,7 +355,7 @@ class MainActivity : BaseViewBindingActivity<MainActivityBinding>() {
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setUnreadUpdatesBadge() {
|
private fun setUnreadUpdatesBadge() {
|
||||||
val updates = if (preferences.libraryUpdateShowTabBadge().get()) preferences.libraryUnreadUpdatesCount().get() else 0
|
val updates = if (preferences.showUpdatesNavBadge().get()) preferences.unreadUpdatesCount().get() else 0
|
||||||
if (updates > 0) {
|
if (updates > 0) {
|
||||||
nav.getOrCreateBadge(R.id.nav_updates).number = updates
|
nav.getOrCreateBadge(R.id.nav_updates).number = updates
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -106,8 +106,8 @@ class UpdatesPresenter : BasePresenter<UpdatesController>() {
|
||||||
setDownloadedChapters(list)
|
setDownloadedChapters(list)
|
||||||
chapters = list
|
chapters = list
|
||||||
|
|
||||||
//Set unread chapter count for bottom bar badge
|
// Set unread chapter count for bottom bar badge
|
||||||
preferences.libraryUnreadUpdatesCount().set(list.count { !it.read })
|
preferences.unreadUpdatesCount().set(list.count { !it.read })
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -32,6 +32,11 @@ class SettingsGeneralController : SettingsController() {
|
||||||
defaultValue = "1"
|
defaultValue = "1"
|
||||||
summary = "%s"
|
summary = "%s"
|
||||||
}
|
}
|
||||||
|
switchPreference {
|
||||||
|
key = Keys.showUpdatesNavBadge
|
||||||
|
titleRes = R.string.pref_library_update_show_tab_badge
|
||||||
|
defaultValue = true
|
||||||
|
}
|
||||||
switchPreference {
|
switchPreference {
|
||||||
key = Keys.confirmExit
|
key = Keys.confirmExit
|
||||||
titleRes = R.string.pref_confirm_exit
|
titleRes = R.string.pref_confirm_exit
|
||||||
|
|
|
@ -199,11 +199,6 @@ class SettingsLibraryController : SettingsController() {
|
||||||
titleRes = R.string.pref_update_only_non_completed
|
titleRes = R.string.pref_update_only_non_completed
|
||||||
defaultValue = false
|
defaultValue = false
|
||||||
}
|
}
|
||||||
switchPreference {
|
|
||||||
key = Keys.libraryUpdateShowTabBadge
|
|
||||||
titleRes = R.string.pref_library_update_show_tab_badge
|
|
||||||
defaultValue = true
|
|
||||||
}
|
|
||||||
preference {
|
preference {
|
||||||
key = Keys.libraryUpdateCategories
|
key = Keys.libraryUpdateCategories
|
||||||
titleRes = R.string.categories
|
titleRes = R.string.categories
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
package eu.kanade.tachiyomi.widget.preference
|
||||||
|
|
||||||
|
class ButtonToggleGroupPreference {
|
||||||
|
}
|
|
@ -223,7 +223,7 @@
|
||||||
<string name="charging">Charging</string>
|
<string name="charging">Charging</string>
|
||||||
<string name="restrictions">Restrictions: %s</string>
|
<string name="restrictions">Restrictions: %s</string>
|
||||||
<string name="pref_update_only_non_completed">Only update ongoing manga</string>
|
<string name="pref_update_only_non_completed">Only update ongoing manga</string>
|
||||||
<string name="pref_library_update_show_tab_badge">Show update count on bottom bar</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>
|
||||||
|
|
Reference in a new issue