From 2383c021b9bb26ea5ca690baf4e2c6ece8da202e Mon Sep 17 00:00:00 2001 From: Harry Bond Date: Sun, 15 Dec 2024 18:50:20 +0000 Subject: [PATCH] check --- .../main/java/app/organicmaps/util/Config.java | 3 ++- .../java/app/organicmaps/util/ThemeUtils.java | 18 +++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/android/app/src/main/java/app/organicmaps/util/Config.java b/android/app/src/main/java/app/organicmaps/util/Config.java index 55670340d9..6d8eb90a35 100644 --- a/android/app/src/main/java/app/organicmaps/util/Config.java +++ b/android/app/src/main/java/app/organicmaps/util/Config.java @@ -2,6 +2,7 @@ package app.organicmaps.util; import android.content.Context; import android.content.SharedPreferences; +import android.content.res.Resources; import android.os.Build; import androidx.annotation.NonNull; @@ -277,7 +278,7 @@ public final class Config { String followSystemTheme = MwmApplication.from(context).getString(R.string.theme_follow_system); String res = getString(KEY_MISC_UI_THEME_SETTINGS, followSystemTheme); - if (ThemeUtils.isValidTheme(context, res) || ThemeUtils.isFollowSystemTheme(context, res)) + if (ThemeUtils.isValidTheme(context, res) || ThemeUtils.isValidThemeMode(context, res)) return res; return followSystemTheme; diff --git a/android/app/src/main/java/app/organicmaps/util/ThemeUtils.java b/android/app/src/main/java/app/organicmaps/util/ThemeUtils.java index b3613e7cab..06cede0982 100644 --- a/android/app/src/main/java/app/organicmaps/util/ThemeUtils.java +++ b/android/app/src/main/java/app/organicmaps/util/ThemeUtils.java @@ -107,7 +107,23 @@ public final class ThemeUtils { String navAutoTheme = context.getString(R.string.theme_nav_auto); return navAutoTheme.equals(theme); -} + } + + public static boolean isAutoTheme(@NonNull Context context) + { + return isFollowSystemTheme(context, Config.getCurrentUiTheme(context)); + } + + public static boolean isAutoTheme(@NonNull Context context, String theme) + { + String followSystemTheme = context.getString(R.string.theme_auto); + return followSystemTheme.equals(theme); + } + + public static boolean isValidThemeMode(@NonNull Context context, String res) + { + return isFollowSystemTheme(context, res) || isNavAutoTheme(context, res) || isAutoTheme(context, res); + } public static boolean isValidTheme(@NonNull Context context, String theme) {