diff --git a/app/src/main/java/eu/faircode/email/ActivityBase.java b/app/src/main/java/eu/faircode/email/ActivityBase.java
index 4e0cca7df1..de85f23061 100644
--- a/app/src/main/java/eu/faircode/email/ActivityBase.java
+++ b/app/src/main/java/eu/faircode/email/ActivityBase.java
@@ -91,30 +91,52 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
case "blue_orange_light":
setTheme(R.style.AppThemeBlueOrangeLight);
break;
+ case "orange_blue_light":
+ setTheme(R.style.AppThemeOrangeBlueLight);
+ break;
+
case "yellow_purple_light":
setTheme(R.style.AppThemeYellowPurpleLight);
break;
+ case "purple_yellow_light":
+ setTheme(R.style.AppThemePurpleYellowLight);
+ break;
+
case "red_green_light":
setTheme(R.style.AppThemeRedGreenLight);
break;
- case "grey_light":
- setTheme(R.style.AppThemeGreySteelBlueLight);
+ case "green_red_light":
+ setTheme(R.style.AppThemeGreenRedLight);
break;
case "dark":
case "blue_orange_dark":
setTheme(R.style.AppThemeBlueOrangeDark);
break;
+ case "orange_blue_dark":
+ setTheme(R.style.AppThemeOrangeBlueDark);
+ break;
+
case "yellow_purple_dark":
setTheme(R.style.AppThemeYellowPurpleDark);
break;
+ case "purple_yellow_dark":
+ setTheme(R.style.AppThemePurpleYellowDark);
+ break;
+
case "red_green_dark":
setTheme(R.style.AppThemeRedGreenDark);
break;
+ case "green_red_dark":
+ setTheme(R.style.AppThemeGreenRedDark);
+ break;
+
+ case "grey_light":
+ setTheme(R.style.AppThemeGreySteelBlueLight);
+ break;
case "grey_dark":
setTheme(R.style.AppThemeGreySteelBlueDark);
break;
-
case "black":
setTheme(R.style.AppThemeBlack);
break;
diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java b/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java
index 2372b0f462..ad9a95d0f8 100644
--- a/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java
+++ b/app/src/main/java/eu/faircode/email/FragmentOptionsDisplay.java
@@ -670,6 +670,9 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
final SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext());
String theme = prefs.getString("theme", "light");
+ swReverse.setChecked(theme.startsWith("orange_blue") ||
+ theme.startsWith("purple_yellow") ||
+ theme.startsWith("green_red"));
swDark.setChecked(theme.endsWith("dark"));
swSystem.setChecked(theme.endsWith("system"));
@@ -694,14 +697,20 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
case "system":
case "blue_orange_light":
case "blue_orange_dark":
+ case "orange_blue_light":
+ case "orange_blue_dark":
rgTheme.check(R.id.rbThemeBlueOrange);
break;
case "yellow_purple_light":
case "yellow_purple_dark":
+ case "purple_yellow_light":
+ case "purple_yellow_dark":
rgTheme.check(R.id.rbThemeYellowPurple);
break;
case "red_green_light":
case "red_green_dark":
+ case "green_red_light":
+ case "green_red_dark":
rgTheme.check(R.id.rbThemeRedGreen);
break;
case "grey_system":
@@ -727,22 +736,20 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
case R.id.rbThemeBlueOrange:
if (swSystem.isChecked())
prefs.edit().putString("theme", "system").apply();
- else if (swDark.isChecked())
- prefs.edit().putString("theme", "blue_orange_dark").apply();
else
- prefs.edit().putString("theme", "blue_orange_light").apply();
+ prefs.edit().putString("theme",
+ (swReverse.isChecked() ? "orange_blue" : "blue_orange") +
+ (swDark.isChecked() ? "_dark" : "_light")).apply();
break;
case R.id.rbThemeYellowPurple:
- if (swDark.isChecked())
- prefs.edit().putString("theme", "yellow_purple_dark").apply();
- else
- prefs.edit().putString("theme", "yellow_purple_light").apply();
+ prefs.edit().putString("theme",
+ (swReverse.isChecked() ? "purple_yellow" : "yellow_purple") +
+ (swDark.isChecked() ? "_dark" : "_light")).apply();
break;
case R.id.rbThemeRedGreen:
- if (swDark.isChecked())
- prefs.edit().putString("theme", "red_green_dark").apply();
- else
- prefs.edit().putString("theme", "red_green_light").apply();
+ prefs.edit().putString("theme",
+ (swReverse.isChecked() ? "green_red" : "red_green") +
+ (swDark.isChecked() ? "_dark" : "_light")).apply();
break;
case R.id.rbThemeGrey:
if (swSystem.isChecked())
diff --git a/app/src/main/res/layout/dialog_theme.xml b/app/src/main/res/layout/dialog_theme.xml
index cabb4e0adf..a601d584e8 100644
--- a/app/src/main/res/layout/dialog_theme.xml
+++ b/app/src/main/res/layout/dialog_theme.xml
@@ -33,7 +33,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="6dp"
- android:text="@string/title_setup_theme_blue_amber"
+ android:text="@string/title_setup_theme_blue_orange"
android:textAppearance="@style/TextAppearance.AppCompat.Medium" />
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 9cd29a0a7b..99c4cf28c5 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -13,17 +13,6 @@
#ff00ff00
#ff00e000
-
- #424242
- #1b1b1b
- #6d6d6d
-
-
- #424242
- #1b1b1b
- #90a4ae
- #62757f
-
#fff
#7f000000
#ddd
@@ -63,30 +52,71 @@
#ffb300
#c68400
-
- #01579b
- #002f6c
+
+ #ffb300
+ #c68400
+ #039be5
-
+
#fdd835
#c6a700
#8e24aa
-
- #f57f17
- #bc5100
- #ba68c8
+
+ #8e24aa
+ #5c007a
+ #f9a825
#e53935
#ab000d
#43a047
+
+ #43a047
+ #00701a
+ #e53935
+
+
+ #01579b
+ #002f6c
+ #ffb300
+
+
+ #ff6f00
+ #c43e00
+ #4fc3f7
+
+
+ #f57f17
+ #bc5100
+ #ba68c8
+
+
+ #4a148c
+ #12005e
+ #fff176
+
#b71c1c
#7f0000
#81c784
+
+ #1b5e20
+ #003300
+ #e57373
+
+
+ #424242
+ #1b1b1b
+
+
+ #424242
+ #1b1b1b
+ #90a4ae
+ #62757f
+
#222
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1b28dea69b..4ddaf2016d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -201,7 +201,7 @@
Select theme
- Blue/orange
+ Blue/orange
Yellow/purple
Red/green
Grey
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 8acb3cc44d..586b544831 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -97,6 +97,8 @@
- @drawable/scroll_track
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+