Allow more system themes

pull/171/head
M66B 6 years ago
parent 53f6baed77
commit 895474940f

@ -140,12 +140,26 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
case "black": case "black":
setTheme(R.style.AppThemeBlack); setTheme(R.style.AppThemeBlack);
break; break;
case "system": case "system":
case "blue_orange_system":
if ((uiMode & Configuration.UI_MODE_NIGHT_YES) != 0) if ((uiMode & Configuration.UI_MODE_NIGHT_YES) != 0)
setTheme(R.style.AppThemeBlueOrangeDark); setTheme(R.style.AppThemeBlueOrangeDark);
else else
setTheme(R.style.AppThemeBlueOrangeLight); setTheme(R.style.AppThemeBlueOrangeLight);
break; break;
case "yellow_purple_system":
if ((uiMode & Configuration.UI_MODE_NIGHT_YES) != 0)
setTheme(R.style.AppThemeYellowPurpleDark);
else
setTheme(R.style.AppThemeYellowPurpleLight);
break;
case "red_green_system":
if ((uiMode & Configuration.UI_MODE_NIGHT_YES) != 0)
setTheme(R.style.AppThemeRedGreenDark);
else
setTheme(R.style.AppThemeRedGreenLight);
break;
case "grey_system": case "grey_system":
if ((uiMode & Configuration.UI_MODE_NIGHT_YES) != 0) if ((uiMode & Configuration.UI_MODE_NIGHT_YES) != 0)
setTheme(R.style.AppThemeGreySteelBlueDark); setTheme(R.style.AppThemeGreySteelBlueDark);

@ -673,8 +673,7 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
checkedId == R.id.rbThemeYellowPurple || checkedId == R.id.rbThemeYellowPurple ||
checkedId == R.id.rbThemeRedGreen || checkedId == R.id.rbThemeRedGreen ||
checkedId == R.id.rbThemeGrey); checkedId == R.id.rbThemeGrey);
swSystem.setEnabled(checkedId == R.id.rbThemeBlueOrange || swSystem.setEnabled(swDark.isEnabled());
checkedId == R.id.rbThemeGrey);
boolean reverse = (swReverse.isEnabled() && swReverse.isChecked()); boolean reverse = (swReverse.isEnabled() && swReverse.isChecked());
boolean dark = (swDark.isEnabled() && swDark.isChecked()); boolean dark = (swDark.isEnabled() && swDark.isChecked());
@ -735,18 +734,21 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
case "light": case "light":
case "dark": case "dark":
case "system": case "system":
case "blue_orange_system":
case "blue_orange_light": case "blue_orange_light":
case "blue_orange_dark": case "blue_orange_dark":
case "orange_blue_light": case "orange_blue_light":
case "orange_blue_dark": case "orange_blue_dark":
rgTheme.check(R.id.rbThemeBlueOrange); rgTheme.check(R.id.rbThemeBlueOrange);
break; break;
case "yellow_purple_system":
case "yellow_purple_light": case "yellow_purple_light":
case "yellow_purple_dark": case "yellow_purple_dark":
case "purple_yellow_light": case "purple_yellow_light":
case "purple_yellow_dark": case "purple_yellow_dark":
rgTheme.check(R.id.rbThemeYellowPurple); rgTheme.check(R.id.rbThemeYellowPurple);
break; break;
case "red_green_system":
case "red_green_light": case "red_green_light":
case "red_green_dark": case "red_green_dark":
case "green_red_light": case "green_red_light":
@ -779,21 +781,27 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
switch (rgTheme.getCheckedRadioButtonId()) { switch (rgTheme.getCheckedRadioButtonId()) {
case R.id.rbThemeBlueOrange: case R.id.rbThemeBlueOrange:
if (system) if (system)
prefs.edit().putString("theme", "system").apply(); prefs.edit().putString("theme", "blue_orange_system").apply();
else else
prefs.edit().putString("theme", prefs.edit().putString("theme",
(reverse ? "orange_blue" : "blue_orange") + (reverse ? "orange_blue" : "blue_orange") +
(dark ? "_dark" : "_light")).apply(); (dark ? "_dark" : "_light")).apply();
break; break;
case R.id.rbThemeYellowPurple: case R.id.rbThemeYellowPurple:
prefs.edit().putString("theme", if (system)
(reverse ? "purple_yellow" : "yellow_purple") + prefs.edit().putString("theme", "yellow_purple_system").apply();
(dark ? "_dark" : "_light")).apply(); else
prefs.edit().putString("theme",
(reverse ? "purple_yellow" : "yellow_purple") +
(dark ? "_dark" : "_light")).apply();
break; break;
case R.id.rbThemeRedGreen: case R.id.rbThemeRedGreen:
prefs.edit().putString("theme", if (system)
(reverse ? "green_red" : "red_green") + prefs.edit().putString("theme", "red_green_system").apply();
(dark ? "_dark" : "_light")).apply(); else
prefs.edit().putString("theme",
(reverse ? "green_red" : "red_green") +
(dark ? "_dark" : "_light")).apply();
break; break;
case R.id.rbThemeGrey: case R.id.rbThemeGrey:
if (system) if (system)

Loading…
Cancel
Save