Merge pull request #5899 from Stypox/fix-settings-theme

Fix settings switches are not red anymore
pull/5906/head
Tobi 2021-03-24 11:24:27 +01:00 zatwierdzone przez GitHub
commit 67afd05e22
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
2 zmienionych plików z 34 dodań i 1 usunięć

Wyświetl plik

@ -48,7 +48,7 @@ public class SettingsActivity extends AppCompatActivity
@Override
protected void onCreate(final Bundle savedInstanceBundle) {
ThemeHelper.setTheme(this);
setTheme(ThemeHelper.getSettingsThemeStyle(this));
assureCorrectAppLanguage(this);
super.onCreate(savedInstanceBundle);

Wyświetl plik

@ -169,6 +169,39 @@ public final class ThemeHelper {
return baseTheme;
}
@StyleRes
public static int getSettingsThemeStyle(final Context context) {
final Resources res = context.getResources();
final String lightTheme = res.getString(R.string.light_theme_key);
final String blackTheme = res.getString(R.string.black_theme_key);
final String automaticDeviceTheme = res.getString(R.string.auto_device_theme_key);
final String selectedTheme = getSelectedThemeKey(context);
if (selectedTheme.equals(lightTheme)) {
return R.style.LightSettingsTheme;
} else if (selectedTheme.equals(blackTheme)) {
return R.style.BlackSettingsTheme;
} else if (selectedTheme.equals(automaticDeviceTheme)) {
if (isDeviceDarkThemeEnabled(context)) {
// use the dark theme variant preferred by the user
final String selectedNightTheme = getSelectedNightThemeKey(context);
if (selectedNightTheme.equals(blackTheme)) {
return R.style.BlackSettingsTheme;
} else {
return R.style.DarkSettingsTheme;
}
} else {
// there is only one day theme
return R.style.LightSettingsTheme;
}
} else {
// default to dark theme
return R.style.DarkSettingsTheme;
}
}
/**
* Get a resource id from a resource styled according to the context's theme.
*