From cc4d12d35478eac85db45cab171d5cac6333abdc Mon Sep 17 00:00:00 2001 From: aayush262 Date: Thu, 4 Jan 2024 12:34:43 +0530 Subject: [PATCH] Oled for LN --- .../novel/novelreader/NovelReaderActivity.kt | 5 +++++ .../NovelReaderSettingsDialogFragment.kt | 7 ++++-- .../settings/CurrentNovelReaderSettings.kt | 1 + .../settings/ReaderSettingsActivity.kt | 6 +++++ .../res/layout/activity_reader_settings.xml | 22 +++++++++++++++++++ ...om_sheet_current_novel_reader_settings.xml | 19 ++++++++++++++++ 6 files changed, 58 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderActivity.kt b/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderActivity.kt index 1ea357fa..f76e6ff5 100644 --- a/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderActivity.kt +++ b/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderActivity.kt @@ -351,6 +351,11 @@ class NovelReaderActivity : AppCompatActivity(), EbookReaderEventListener { saveData("${sanitizedBookId}_current_settings", settings.defaultLN) hideBars() + if(settings.defaultLN.useOledTheme) { + themes.forEach { theme -> + theme.darkBg = Color.parseColor("#000000") + } + } currentTheme = themes.first { it.name.equals(settings.defaultLN.currentThemeName, ignoreCase = true) } diff --git a/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderSettingsDialogFragment.kt b/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderSettingsDialogFragment.kt index e9b12c74..760c7eb3 100644 --- a/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderSettingsDialogFragment.kt +++ b/app/src/main/java/ani/dantotsu/media/novel/novelreader/NovelReaderSettingsDialogFragment.kt @@ -31,7 +31,6 @@ class NovelReaderSettingsDialogFragment : BottomSheetDialogFragment() { super.onViewCreated(view, savedInstanceState) val activity = requireActivity() as NovelReaderActivity val settings = activity.settings.defaultLN - val themeLabels = activity.themes.map { it.name } binding.themeSelect.adapter = NoPaddingArrayAdapter(activity, R.layout.item_dropdown, themeLabels) @@ -49,7 +48,11 @@ class NovelReaderSettingsDialogFragment : BottomSheetDialogFragment() { override fun onNothingSelected(parent: AdapterView<*>?) {} } - + binding.useOledTheme.isChecked = settings.useOledTheme + binding.useOledTheme.setOnCheckedChangeListener { _, isChecked -> + settings.useOledTheme = isChecked + activity.applySettings() + } val layoutList = listOf( binding.paged, binding.continuous diff --git a/app/src/main/java/ani/dantotsu/settings/CurrentNovelReaderSettings.kt b/app/src/main/java/ani/dantotsu/settings/CurrentNovelReaderSettings.kt index bbe3fcd3..b1cd429b 100644 --- a/app/src/main/java/ani/dantotsu/settings/CurrentNovelReaderSettings.kt +++ b/app/src/main/java/ani/dantotsu/settings/CurrentNovelReaderSettings.kt @@ -11,6 +11,7 @@ data class CurrentNovelReaderSettings( var justify: Boolean = true, var hyphenation: Boolean = true, var useDarkTheme: Boolean = false, + var useOledTheme: Boolean = false, var invert: Boolean = false, var maxInlineSize: Int = 720, var maxBlockSize: Int = 1440, diff --git a/app/src/main/java/ani/dantotsu/settings/ReaderSettingsActivity.kt b/app/src/main/java/ani/dantotsu/settings/ReaderSettingsActivity.kt index 999b35a5..67bd04d7 100644 --- a/app/src/main/java/ani/dantotsu/settings/ReaderSettingsActivity.kt +++ b/app/src/main/java/ani/dantotsu/settings/ReaderSettingsActivity.kt @@ -334,6 +334,12 @@ class ReaderSettingsActivity : AppCompatActivity() { saveData(reader, settings) } + binding.LNuseOledTheme.isChecked = settings.defaultLN.useOledTheme + binding.LNuseOledTheme.setOnCheckedChangeListener { _, isChecked -> + settings.defaultLN.useOledTheme = isChecked + saveData(reader, settings) + } + binding.LNkeepScreenOn.isChecked = settings.defaultLN.keepScreenOn binding.LNkeepScreenOn.setOnCheckedChangeListener { _, isChecked -> settings.defaultLN.keepScreenOn = isChecked diff --git a/app/src/main/res/layout/activity_reader_settings.xml b/app/src/main/res/layout/activity_reader_settings.xml index 49e999f9..e8886066 100644 --- a/app/src/main/res/layout/activity_reader_settings.xml +++ b/app/src/main/res/layout/activity_reader_settings.xml @@ -1122,6 +1122,27 @@ app:thumbTint="@color/button_switch_track" tools:ignore="TooManyViews,VisualLintButtonSize" /> + + diff --git a/app/src/main/res/layout/bottom_sheet_current_novel_reader_settings.xml b/app/src/main/res/layout/bottom_sheet_current_novel_reader_settings.xml index 5d746238..993a70e1 100644 --- a/app/src/main/res/layout/bottom_sheet_current_novel_reader_settings.xml +++ b/app/src/main/res/layout/bottom_sheet_current_novel_reader_settings.xml @@ -512,6 +512,25 @@ app:thumbTint="@color/button_switch_track" tools:ignore="VisualLintButtonSize" /> + +