From e9ae10afb7affd1814e55ad6af75c52d05535e37 Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Wed, 26 Apr 2023 22:53:46 +0800 Subject: [PATCH] Use Black as the themeKey for system dark mode on Android --- .../main/java/app/omnivore/omnivore/ui/reader/WebReader.kt | 2 +- .../app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReader.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReader.kt index c2e827b9b..27e0bff99 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReader.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReader.kt @@ -47,7 +47,7 @@ fun WebReader( ) val styledContent = webReaderContent.styledContent() - val isInDarkMode = preferences.themeKey == "Dark" + val isInDarkMode = preferences.themeKey == "Dark" || preferences.themeKey == "Black" Box { AndroidView(factory = { diff --git a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt index 38d037106..f2c711c6c 100644 --- a/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt +++ b/android/Omnivore/app/src/main/java/app/omnivore/omnivore/ui/reader/WebReaderViewModel.kt @@ -56,7 +56,8 @@ class WebReaderViewModel @Inject constructor( val showLabelsSelectionSheetLiveData = MutableLiveData(false) val savedItemLabelsLiveData = dataService.db.savedItemLabelDao().getSavedItemLabelsLiveData() - val systemThemeKeys = listOf("Light", "Dark", "System") + // "Sepia", "Apollo", + val systemThemeKeys = listOf("Light", "Black", "System") var hasTappedExistingHighlight = false var lastTapCoordinates: TapCoordinates? = null @@ -279,7 +280,7 @@ class WebReaderViewModel @Inject constructor( fun themeKey(isDarkMode: Boolean, storedThemePreference: String): String { if (storedThemePreference == "System") { - return if (isDarkMode) "Dark" else "Light" + return if (isDarkMode) "Black" else "Light" } return storedThemePreference @@ -292,7 +293,7 @@ class WebReaderViewModel @Inject constructor( datastoreRepo.putString(DatastoreKeys.preferredTheme, systemThemeKeys[index]) } - val isDark = newThemeKey == "Dark" + val isDark = newThemeKey == "Dark" || newThemeKey == "Black" val script = "var event = new Event('updateColorMode');event.isDark = '$isDark';document.dispatchEvent(event);" enqueueScript(script) }