diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c10bdc580..5cff3b59f 100755 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -200,7 +200,7 @@ + android:theme="@style/Theme.Tachiyomi.Light"> @@ -374,7 +374,7 @@ + android:theme="@style/Theme.Tachiyomi.Light" /> diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseThemedActivity.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseThemedActivity.kt index 5eaa3c65f..3e4e94a0d 100755 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseThemedActivity.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseThemedActivity.kt @@ -1,68 +1,42 @@ package eu.kanade.tachiyomi.ui.base.activity -import android.content.res.Configuration -import android.os.Build +import android.content.res.Configuration.UI_MODE_NIGHT_MASK +import android.content.res.Configuration.UI_MODE_NIGHT_YES import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import eu.kanade.tachiyomi.R +import eu.kanade.tachiyomi.data.preference.PreferenceValues.DarkThemeVariant +import eu.kanade.tachiyomi.data.preference.PreferenceValues.LightThemeVariant +import eu.kanade.tachiyomi.data.preference.PreferenceValues.ThemeMode import eu.kanade.tachiyomi.data.preference.PreferencesHelper import uy.kohesive.injekt.injectLazy -import eu.kanade.tachiyomi.data.preference.PreferenceValues as Values abstract class BaseThemedActivity : AppCompatActivity() { val preferences: PreferencesHelper by injectLazy() - private val isDarkMode: Boolean by lazy { - val themeMode = preferences.themeMode().get() - (themeMode == Values.ThemeMode.dark) || - ( - themeMode == Values.ThemeMode.system && - (resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES) - ) - } - - private val lightTheme: Int by lazy { - when (preferences.themeLight().get()) { - Values.LightThemeVariant.blue -> R.style.Theme_Tachiyomi_LightBlue - else -> { - when { - // Light status + navigation bar - Build.VERSION.SDK_INT >= Build.VERSION_CODES.O_MR1 -> { - R.style.Theme_Tachiyomi_Light_Api27 - } - // Light status bar + fallback gray navigation bar - Build.VERSION.SDK_INT >= Build.VERSION_CODES.M -> { - R.style.Theme_Tachiyomi_Light_Api23 - } - // Fallback gray status + navigation bar - else -> { - R.style.Theme_Tachiyomi_Light - } - } - } - } - } - - private val darkTheme: Int by lazy { - when (preferences.themeDark().get()) { - Values.DarkThemeVariant.blue -> R.style.Theme_Tachiyomi_DarkBlue - Values.DarkThemeVariant.amoled -> R.style.Theme_Tachiyomi_Amoled - Values.DarkThemeVariant.red -> R.style.Theme_Tachiyomi_Red - Values.DarkThemeVariant.midnightdusk -> R.style.Theme_Tachiyomi_MidnightDusk - Values.DarkThemeVariant.hotpink -> R.style.Theme_Tachiyomi_HotPink - else -> R.style.Theme_Tachiyomi_Dark - } - } - override fun onCreate(savedInstanceState: Bundle?) { - setTheme( - when { - isDarkMode -> darkTheme - else -> lightTheme + val isDarkMode = when (preferences.themeMode().get()) { + ThemeMode.light -> false + ThemeMode.dark -> true + ThemeMode.system -> resources.configuration.uiMode and UI_MODE_NIGHT_MASK == UI_MODE_NIGHT_YES + } + val themeId = if (isDarkMode) { + when (preferences.themeDark().get()) { + DarkThemeVariant.default -> R.style.Theme_Tachiyomi_Dark + DarkThemeVariant.blue -> R.style.Theme_Tachiyomi_Dark_Blue + DarkThemeVariant.amoled -> R.style.Theme_Tachiyomi_Dark_Amoled + DarkThemeVariant.red -> R.style.Theme_Tachiyomi_Dark_Red + DarkThemeVariant.midnightdusk -> R.style.Theme_Tachiyomi_Dark_MidnightDusk + DarkThemeVariant.hotpink -> R.style.Theme_Tachiyomi_Dark_HotPink } - ) - + } else { + when (preferences.themeLight().get()) { + LightThemeVariant.default -> R.style.Theme_Tachiyomi_Light + LightThemeVariant.blue -> R.style.Theme_Tachiyomi_Light_Blue + } + } + setTheme(themeId) super.onCreate(savedInstanceState) } } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt index f21c120f8..e5419bba7 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt @@ -35,7 +35,6 @@ import eu.kanade.tachiyomi.ui.base.controller.SearchableNucleusController import eu.kanade.tachiyomi.ui.base.controller.TabbedController import eu.kanade.tachiyomi.ui.base.controller.withFadeTransaction import eu.kanade.tachiyomi.ui.browse.migration.advanced.design.PreMigrationController -import eu.kanade.tachiyomi.ui.browse.migration.sources.MigrationSourcesController import eu.kanade.tachiyomi.ui.browse.source.globalsearch.GlobalSearchController import eu.kanade.tachiyomi.ui.main.MainActivity import eu.kanade.tachiyomi.ui.manga.MangaController diff --git a/app/src/main/res/values-v23/themes.xml b/app/src/main/res/values-v23/themes.xml index 73607f42f..49f3e5ea6 100644 --- a/app/src/main/res/values-v23/themes.xml +++ b/app/src/main/res/values-v23/themes.xml @@ -1,9 +1,9 @@ - - + + - - - - - @@ -152,6 +143,7 @@ ?attr/colorPrimary ?attr/colorPrimary + @null false true false @@ -191,17 +183,16 @@ @color/filterColorDark - + - - - @@ -279,7 +255,7 @@ - + + - -