diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt index f1b1ea9d..a28f4ceb 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/MainActivity.kt @@ -38,6 +38,10 @@ class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + if (appPreferences.amoledTheme) { + setTheme(R.style.Theme_FindroidAMOLED) + } + binding = ActivityMainBinding.inflate(layoutInflater) setContentView(binding.root) diff --git a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt index fecec562..277e779f 100644 --- a/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt +++ b/app/phone/src/main/java/dev/jdtech/jellyfin/fragments/SettingsAppearanceFragment.kt @@ -4,6 +4,7 @@ import android.os.Bundle import androidx.appcompat.app.AppCompatDelegate import androidx.preference.ListPreference import androidx.preference.PreferenceFragmentCompat +import androidx.preference.SwitchPreferenceCompat import dev.jdtech.jellyfin.R @Suppress("unused") @@ -19,5 +20,10 @@ class SettingsAppearanceFragment : PreferenceFragmentCompat() { } true } + + findPreference("pref_amoled_theme")?.setOnPreferenceChangeListener { _, _ -> + requireActivity().recreate() + true + } } } diff --git a/core/src/main/res/values-night/themes.xml b/core/src/main/res/values-night/themes.xml index a27db654..aa22a750 100644 --- a/core/src/main/res/values-night/themes.xml +++ b/core/src/main/res/values-night/themes.xml @@ -19,4 +19,10 @@ #FFF + + \ No newline at end of file diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index cc58b58b..eb5dd54a 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -130,6 +130,8 @@ Seek forward increment (ms) Dynamic colors Use Material You Dynamic colors (only available on Android 12+) + AMOLED dark theme + Use AMOLED theme with a pure black background Subtitles Customize subtitles appearance Follow system diff --git a/core/src/main/res/xml/fragment_settings_appearance.xml b/core/src/main/res/xml/fragment_settings_appearance.xml index ac1a9202..fc66496d 100644 --- a/core/src/main/res/xml/fragment_settings_appearance.xml +++ b/core/src/main/res/xml/fragment_settings_appearance.xml @@ -12,6 +12,11 @@ app:key="dynamic_colors" app:summary="@string/dynamic_colors_summary" app:title="@string/dynamic_colors" /> +