feat(reader): Add setting to toggle chapter toast
This commit is contained in:
@@ -409,6 +409,9 @@ class AppSettings @Inject constructor(@ApplicationContext context: Context) {
|
||||
val isReaderBarTransparent: Boolean
|
||||
get() = prefs.getBoolean(KEY_READER_BAR_TRANSPARENT, true)
|
||||
|
||||
val isReaderChapterToastEnabled: Boolean
|
||||
get() = prefs.getBoolean(KEY_READER_CHAPTER_TOAST, true)
|
||||
|
||||
val isReaderKeepScreenOn: Boolean
|
||||
get() = prefs.getBoolean(KEY_READER_SCREEN_ON, true)
|
||||
|
||||
@@ -747,6 +750,7 @@ class AppSettings @Inject constructor(@ApplicationContext context: Context) {
|
||||
const val KEY_SYNC_SETTINGS = "sync_settings"
|
||||
const val KEY_READER_BAR = "reader_bar"
|
||||
const val KEY_READER_BAR_TRANSPARENT = "reader_bar_transparent"
|
||||
const val KEY_READER_CHAPTER_TOAST = "reader_chapter_toast"
|
||||
const val KEY_READER_BACKGROUND = "reader_background"
|
||||
const val KEY_READER_SCREEN_ON = "reader_screen_on"
|
||||
const val KEY_SHORTCUTS = "dynamic_shortcuts"
|
||||
|
||||
@@ -488,7 +488,11 @@ class ReaderActivity :
|
||||
uiState.incognito -> getString(R.string.incognito_mode)
|
||||
else -> chapterTitle
|
||||
}
|
||||
if (chapterTitle != previous?.getChapterTitle(resources) && chapterTitle.isNotEmpty()) {
|
||||
if (
|
||||
viewModel.isChapterToastEnabled.value &&
|
||||
chapterTitle != previous?.getChapterTitle(resources) &&
|
||||
chapterTitle.isNotEmpty()
|
||||
) {
|
||||
viewBinding.toastView.showTemporary(chapterTitle, TOAST_DURATION)
|
||||
}
|
||||
if (uiState.isSliderAvailable()) {
|
||||
|
||||
@@ -142,6 +142,12 @@ class ReaderViewModel @Inject constructor(
|
||||
valueProducer = { isReaderBarTransparent },
|
||||
)
|
||||
|
||||
val isChapterToastEnabled = settings.observeAsStateFlow(
|
||||
scope = viewModelScope + Dispatchers.Default,
|
||||
key = AppSettings.KEY_READER_CHAPTER_TOAST,
|
||||
valueProducer = { isReaderChapterToastEnabled },
|
||||
)
|
||||
|
||||
val isKeepScreenOnEnabled = settings.observeAsStateFlow(
|
||||
scope = viewModelScope + Dispatchers.Default,
|
||||
key = AppSettings.KEY_READER_SCREEN_ON,
|
||||
|
||||
@@ -803,6 +803,8 @@
|
||||
<string name="enable_all_sources">Enable all manga sources</string>
|
||||
<string name="enable_all_sources_summary">All available manga sources will be enabled permanently</string>
|
||||
<string name="all_sources_enabled">All sources are enabled</string>
|
||||
<string name="reader_chapter_toast">Show chapter toast</string>
|
||||
<string name="reader_chapter_toast_summary">Show a toast message with the chapter name when it changes</string>
|
||||
<string name="reader_info_bar_transparent">Transparent reader information bar</string>
|
||||
<string name="backup_restored_background">The backup will be restored in the background</string>
|
||||
<string name="restoring_backup">Restoring backup</string>
|
||||
|
||||
@@ -144,6 +144,12 @@
|
||||
android:key="reader_bar_transparent"
|
||||
android:title="@string/reader_info_bar_transparent" />
|
||||
|
||||
<SwitchPreferenceCompat
|
||||
android:defaultValue="true"
|
||||
android:key="reader_chapter_toast"
|
||||
android:summary="@string/reader_chapter_toast_summary"
|
||||
android:title="@string/reader_chapter_toast" />
|
||||
|
||||
<ListPreference
|
||||
android:entries="@array/reader_backgrounds"
|
||||
android:key="reader_background"
|
||||
|
||||
Reference in New Issue
Block a user