Change coloring scheme to Material Theming

pull/193/head
proletarius101 5 years ago
parent 6679c36810
commit bd5fc90251

@ -108,7 +108,7 @@
android:resizeableActivity="true" android:resizeableActivity="true"
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/AppThemeBlueOrangeLight"> android:theme="@style/AppThemeBlueOrange">
<!-- https://developer.samsung.com/samsung-dex/modify-optimizing.html --> <!-- https://developer.samsung.com/samsung-dex/modify-optimizing.html -->
<!-- https://developer.android.com/guide/webapps/managing-webview#metrics --> <!-- https://developer.android.com/guide/webapps/managing-webview#metrics -->

@ -108,7 +108,7 @@
android:resizeableActivity="true" android:resizeableActivity="true"
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/AppThemeBlueOrangeLight"> android:theme="@style/AppThemeBlueOrange">
<!-- https://developer.samsung.com/samsung-dex/modify-optimizing.html --> <!-- https://developer.samsung.com/samsung-dex/modify-optimizing.html -->
<!-- https://developer.android.com/guide/webapps/managing-webview#metrics --> <!-- https://developer.android.com/guide/webapps/managing-webview#metrics -->

@ -43,6 +43,7 @@ import android.widget.Toast;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.core.content.FileProvider; import androidx.core.content.FileProvider;
import androidx.documentfile.provider.DocumentFile; import androidx.documentfile.provider.DocumentFile;
import androidx.lifecycle.Lifecycle; import androidx.lifecycle.Lifecycle;
@ -103,48 +104,50 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
switch (theme) { switch (theme) {
// Light // Light
case "light": case "light":
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
case "blue_orange_light": case "blue_orange_light":
setTheme(R.style.AppThemeBlueOrangeLight); setTheme(R.style.AppThemeBlueOrange);
break; break;
case "orange_blue_light": case "orange_blue_light":
setTheme(R.style.AppThemeOrangeBlueLight); setTheme(R.style.AppThemeOrangeBlue);
break; break;
case "yellow_purple_light": case "yellow_purple_light":
setTheme(R.style.AppThemeYellowPurpleLight); setTheme(R.style.AppThemeYellowPurple);
break; break;
case "purple_yellow_light": case "purple_yellow_light":
setTheme(R.style.AppThemePurpleYellowLight); setTheme(R.style.AppThemePurpleYellow);
break; break;
case "red_green_light": case "red_green_light":
setTheme(R.style.AppThemeRedGreenLight); setTheme(R.style.AppThemeRedGreen);
break; break;
case "green_red_light": case "green_red_light":
setTheme(R.style.AppThemeGreenRedLight); setTheme(R.style.AppThemeGreenRed);
break; break;
// Dark // Dark
case "dark": case "dark":
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
case "blue_orange_dark": case "blue_orange_dark":
setTheme(R.style.AppThemeBlueOrangeDark); setTheme(R.style.AppThemeBlueOrange);
break; break;
case "orange_blue_dark": case "orange_blue_dark":
setTheme(R.style.AppThemeOrangeBlueDark); setTheme(R.style.AppThemeOrangeBlue);
break; break;
case "yellow_purple_dark": case "yellow_purple_dark":
setTheme(R.style.AppThemeYellowPurpleDark); setTheme(R.style.AppThemeYellowPurple);
break; break;
case "purple_yellow_dark": case "purple_yellow_dark":
setTheme(R.style.AppThemePurpleYellowDark); setTheme(R.style.AppThemePurpleYellow);
break; break;
case "red_green_dark": case "red_green_dark":
setTheme(R.style.AppThemeRedGreenDark); setTheme(R.style.AppThemeRedGreen);
break; break;
case "green_red_dark": case "green_red_dark":
setTheme(R.style.AppThemeGreenRedDark); setTheme(R.style.AppThemeGreenRed);
break; break;
// Black // Black
@ -169,10 +172,10 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
// Grey // Grey
case "grey_light": case "grey_light":
setTheme(R.style.AppThemeGreySteelBlueLight); setTheme(R.style.AppThemeGreySteelBlue);
break; break;
case "grey_dark": case "grey_dark":
setTheme(R.style.AppThemeGreySteelBlueDark); setTheme(R.style.AppThemeGreySteelBlue);
break; break;
// Black // Black
@ -186,69 +189,67 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
// System // System
case "system": case "system":
// `Set by Battery Saver` for Q above (inclusive), `Use system default` for Q below
// https://medium.com/androiddevelopers/appcompat-v23-2-daynight-d10f90c83e94
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_AUTO_BATTERY);
} else {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM);
}
case "blue_orange_system": case "blue_orange_system":
setTheme(night setTheme(night
? R.style.AppThemeBlueOrangeDark : R.style.AppThemeBlueOrangeLight); ? R.style.AppThemeBlueOrange : R.style.AppThemeBlueOrange);
break; break;
case "blue_orange_system_black": case "blue_orange_system_black":
setTheme(night setTheme(night
? R.style.AppThemeBlueOrangeBlack : R.style.AppThemeBlueOrangeLight); ? R.style.AppThemeBlueOrangeBlack : R.style.AppThemeBlueOrange);
break; break;
case "orange_blue_system": case "orange_blue_system":
setTheme(night setTheme(night
? R.style.AppThemeOrangeBlueDark : R.style.AppThemeOrangeBlueLight); ? R.style.AppThemeOrangeBlue : R.style.AppThemeOrangeBlue);
break; break;
case "orange_blue_system_black": case "orange_blue_system_black":
setTheme(night setTheme(night
? R.style.AppThemeOrangeBlueBlack : R.style.AppThemeOrangeBlueLight); ? R.style.AppThemeOrangeBlueBlack : R.style.AppThemeOrangeBlue);
break; break;
case "yellow_purple_system": case "yellow_purple_system":
setTheme(night setTheme(night
? R.style.AppThemeYellowPurpleDark : R.style.AppThemeYellowPurpleLight); ? R.style.AppThemeYellowPurple : R.style.AppThemeYellowPurple);
break; break;
case "yellow_purple_system_black": case "yellow_purple_system_black":
setTheme(night setTheme(night
? R.style.AppThemeYellowPurpleBlack : R.style.AppThemeYellowPurpleLight); ? R.style.AppThemeYellowPurpleBlack : R.style.AppThemeYellowPurple);
break; break;
case "purple_yellow_system": case "purple_yellow_system":
setTheme(night setTheme(night
? R.style.AppThemePurpleYellowDark : R.style.AppThemePurpleYellowLight); ? R.style.AppThemePurpleYellow : R.style.AppThemePurpleYellow);
break; break;
case "purple_yellow_system_black": case "purple_yellow_system_black":
setTheme(night setTheme(night
? R.style.AppThemePurpleYellowBlack : R.style.AppThemePurpleYellowLight); ? R.style.AppThemePurpleYellowBlack : R.style.AppThemePurpleYellow);
break; break;
case "red_green_system": case "red_green_system":
setTheme(night setTheme(night
? R.style.AppThemeRedGreenDark : R.style.AppThemeRedGreenLight); ? R.style.AppThemeRedGreen : R.style.AppThemeRedGreen);
break; break;
case "red_green_system_black": case "red_green_system_black":
setTheme(night setTheme(night
? R.style.AppThemeRedGreenBlack : R.style.AppThemeRedGreenLight); ? R.style.AppThemeRedGreenBlack : R.style.AppThemeRedGreen);
break; break;
case "green_red_system": case "green_red_system":
setTheme(night setTheme(night
? R.style.AppThemeGreenRedDark : R.style.AppThemeGreenRedLight); ? R.style.AppThemeGreenRed : R.style.AppThemeGreenRed);
break; break;
case "green_red_system_black": case "green_red_system_black":
setTheme(night setTheme(night
? R.style.AppThemeGreenRedBlack : R.style.AppThemeGreenRedLight); ? R.style.AppThemeGreenRedBlack : R.style.AppThemeGreenRed);
break; break;
case "grey_system": case "grey_system":
setTheme(night setTheme(night
? R.style.AppThemeGreySteelBlueDark : R.style.AppThemeGreySteelBlueLight); ? R.style.AppThemeGreySteelBlue : R.style.AppThemeGreySteelBlue);
break; break;
} }
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
boolean dark = Helper.isDarkTheme(this);
Window window = getWindow();
View view = window.getDecorView();
int flags = view.getSystemUiVisibility();
if (dark)
flags &= ~View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
view.setSystemUiVisibility(flags);
}
} }
prefs.registerOnSharedPreferenceChangeListener(this); prefs.registerOnSharedPreferenceChangeListener(this);
@ -259,7 +260,7 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
if (navbar_colorize) { if (navbar_colorize) {
Window window = getWindow(); Window window = getWindow();
if (window != null) if (window != null)
window.setNavigationBarColor(Helper.resolveColor(this, R.attr.colorPrimaryDark)); window.setNavigationBarColor(Helper.resolveColor(this, R.attr.colorPrimary));
} }
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);

@ -41,7 +41,7 @@ public class ActivityMain extends ActivityBase implements FragmentManager.OnBack
getSupportFragmentManager().addOnBackStackChangedListener(this); getSupportFragmentManager().addOnBackStackChangedListener(this);
if (!Log.isSupportedDevice() && Helper.isPlayStoreInstall()) { if (!Log.isSupportedDevice() && Helper.isPlayStoreInstall()) {
setTheme(R.style.AppThemeBlueOrangeLight); setTheme(R.style.AppThemeBlueOrange);
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_unsupported); setContentView(R.layout.activity_unsupported);
return; return;
@ -181,7 +181,7 @@ public class ActivityMain extends ActivityBase implements FragmentManager.OnBack
else else
prefs.edit().putBoolean("compact", true).apply(); prefs.edit().putBoolean("compact", true).apply();
setTheme(R.style.AppThemeBlueOrangeLight); setTheme(R.style.AppThemeBlueOrange);
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); setContentView(R.layout.activity_main);

@ -74,7 +74,7 @@ public class AdapterContact extends RecyclerView.Adapter<AdapterContact.ViewHold
private LifecycleOwner owner; private LifecycleOwner owner;
private LayoutInflater inflater; private LayoutInflater inflater;
private boolean contacts; private boolean contacts;
private int colorAccent; private int colorSecondary;
private int textColorSecondary; private int textColorSecondary;
private String search = null; private String search = null;
@ -154,7 +154,7 @@ public class AdapterContact extends RecyclerView.Adapter<AdapterContact.ViewHold
ivFavorite.setImageResource(contact.state == EntityContact.STATE_FAVORITE ivFavorite.setImageResource(contact.state == EntityContact.STATE_FAVORITE
? R.drawable.twotone_star_24 : R.drawable.twotone_star_border_24); ? R.drawable.twotone_star_24 : R.drawable.twotone_star_border_24);
ivFavorite.setImageTintList(ColorStateList.valueOf( ivFavorite.setImageTintList(ColorStateList.valueOf(
contact.state == EntityContact.STATE_FAVORITE ? colorAccent : textColorSecondary)); contact.state == EntityContact.STATE_FAVORITE ? colorSecondary : textColorSecondary));
ivFavorite.setContentDescription(contact.state == EntityContact.STATE_FAVORITE ivFavorite.setContentDescription(contact.state == EntityContact.STATE_FAVORITE
? context.getString(R.string.title_accessibility_flagged) : null); ? context.getString(R.string.title_accessibility_flagged) : null);
@ -350,7 +350,7 @@ public class AdapterContact extends RecyclerView.Adapter<AdapterContact.ViewHold
this.inflater = LayoutInflater.from(context); this.inflater = LayoutInflater.from(context);
this.contacts = Helper.hasPermission(context, Manifest.permission.READ_CONTACTS); this.contacts = Helper.hasPermission(context, Manifest.permission.READ_CONTACTS);
this.colorAccent = Helper.resolveColor(context, R.attr.colorAccent); this.colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
this.textColorSecondary = Helper.resolveColor(context, android.R.attr.textColorSecondary); this.textColorSecondary = Helper.resolveColor(context, android.R.attr.textColorSecondary);
setHasStableIds(true); setHasStableIds(true);

@ -212,7 +212,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
private boolean suitable; private boolean suitable;
private boolean unmetered; private boolean unmetered;
private int colorAccent; private int colorSecondary;
private int textColorPrimary; private int textColorPrimary;
private int textColorSecondary; private int textColorSecondary;
private int colorUnread; private int colorUnread;
@ -1069,7 +1069,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
ibSnoozed.setImageResource(snoozy); ibSnoozed.setImageResource(snoozy);
} }
if (message.ui_unsnoozed) if (message.ui_unsnoozed)
ibSnoozed.setColorFilter(colorAccent); ibSnoozed.setColorFilter(colorSecondary);
else else
ibSnoozed.clearColorFilter(); ibSnoozed.clearColorFilter();
@ -1108,7 +1108,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
tvCount.setText(NF.format(message.visible)); tvCount.setText(NF.format(message.visible));
if (selected) if (selected)
ivThread.setColorFilter(colorAccent); ivThread.setColorFilter(colorSecondary);
else else
ivThread.clearColorFilter(); ivThread.clearColorFilter();
} }
@ -1429,7 +1429,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
private void bindFlagged(TupleMessageEx message, boolean expanded) { private void bindFlagged(TupleMessageEx message, boolean expanded) {
boolean pro = ActivityBilling.isPro(context); boolean pro = ActivityBilling.isPro(context);
boolean flagged = (message.count - message.unflagged) > 0; boolean flagged = (message.count - message.unflagged) > 0;
int color = (message.color == null || !pro ? colorAccent : message.color); int color = (message.color == null || !pro ? colorSecondary : message.color);
int tint = (flagged ? color : textColorSecondary); int tint = (flagged ? color : textColorSecondary);
if (!Objects.equals(ibFlagged.getTag(), flagged)) { if (!Objects.equals(ibFlagged.getTag(), flagged)) {
@ -2279,7 +2279,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
@Override @Override
public Drawable getDrawable() { public Drawable getDrawable() {
Drawable d = context.getDrawable(R.drawable.twotone_format_quote_24); Drawable d = context.getDrawable(R.drawable.twotone_format_quote_24);
d.setTint(colorAccent); d.setTint(colorSecondary);
d.setBounds(0, 0, px, px); d.setBounds(0, 0, px, px);
return d; return d;
} }
@ -5305,7 +5305,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
this.suitable = state.isSuitable(); this.suitable = state.isSuitable();
this.unmetered = state.isUnmetered(); this.unmetered = state.isUnmetered();
this.colorAccent = Helper.resolveColor(context, R.attr.colorAccent); this.colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
this.textColorPrimary = Helper.resolveColor(context, android.R.attr.textColorPrimary); this.textColorPrimary = Helper.resolveColor(context, android.R.attr.textColorPrimary);
this.textColorSecondary = Helper.resolveColor(context, android.R.attr.textColorSecondary); this.textColorSecondary = Helper.resolveColor(context, android.R.attr.textColorSecondary);

@ -4,6 +4,7 @@ import android.app.Dialog;
import android.content.DialogInterface; import android.content.DialogInterface;
import android.content.SharedPreferences; import android.content.SharedPreferences;
import android.net.Uri; import android.net.Uri;
import android.os.Build;
import android.os.Bundle; import android.os.Bundle;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
@ -15,6 +16,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.appcompat.widget.SwitchCompat; import androidx.appcompat.widget.SwitchCompat;
import androidx.preference.PreferenceManager; import androidx.preference.PreferenceManager;

@ -289,7 +289,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
private boolean addresses; private boolean addresses;
private int colorPrimary; private int colorPrimary;
private int colorAccent; private int colorSecondary;
private long primary; private long primary;
private boolean connected; private boolean connected;
@ -398,7 +398,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
addresses = prefs.getBoolean("addresses", false); addresses = prefs.getBoolean("addresses", false);
colorPrimary = Helper.resolveColor(getContext(), R.attr.colorPrimary); colorPrimary = Helper.resolveColor(getContext(), R.attr.colorPrimary);
colorAccent = Helper.resolveColor(getContext(), R.attr.colorAccent); colorSecondary = Helper.resolveColor(getContext(), R.attr.colorSecondary);
if (criteria == null) if (criteria == null)
if (thread == null) { if (thread == null) {
@ -1202,7 +1202,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
sbThread.setProgress(size - 1 - position); sbThread.setProgress(size - 1 - position);
sbThread.getProgressDrawable().setAlpha(0); sbThread.getProgressDrawable().setAlpha(0);
sbThread.getThumb().setColorFilter( sbThread.getThumb().setColorFilter(
position == 0 || position == size - 1 ? colorAccent : colorPrimary, position == 0 || position == size - 1 ? colorSecondary : colorPrimary,
PorterDuff.Mode.SRC_IN); PorterDuff.Mode.SRC_IN);
sbThread.setVisibility(size > 1 ? View.VISIBLE : View.GONE); sbThread.setVisibility(size > 1 ? View.VISIBLE : View.GONE);
} }
@ -3990,7 +3990,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
: MenuItem.SHOW_AS_ACTION_NEVER); : MenuItem.SHOW_AS_ACTION_NEVER);
MenuItemCompat.setIconTintList(menuFilter, MenuItemCompat.setIconTintList(menuFilter,
folder && filter_active ? folder && filter_active ?
ColorStateList.valueOf(Helper.resolveColor(getContext(), R.attr.colorAccent)) : null); ColorStateList.valueOf(Helper.resolveColor(getContext(), R.attr.colorSecondary)) : null);
menuFilter.setIcon(folder && filter_active ? R.drawable.twotone_filter_alt_24 : R.drawable.twotone_filter_list_24); menuFilter.setIcon(folder && filter_active ? R.drawable.twotone_filter_alt_24 : R.drawable.twotone_filter_list_24);
MenuItem menuSearch = menu.findItem(R.id.menu_search); MenuItem menuSearch = menu.findItem(R.id.menu_search);

@ -289,7 +289,7 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { public void onCheckedChanged(CompoundButton compoundButton, boolean checked) {
prefs.edit().putBoolean("navbar_colorize", checked).apply(); prefs.edit().putBoolean("navbar_colorize", checked).apply();
setNavigationBarColor( setNavigationBarColor(
checked ? Helper.resolveColor(getContext(), R.attr.colorPrimaryDark) : Color.BLACK); checked ? Helper.resolveColor(getContext(), R.attr.colorPrimaryVariant) : Color.BLACK);
} }
}); });
@ -371,7 +371,7 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
public void onClick(View v) { public void onClick(View v) {
Context context = getContext(); Context context = getContext();
int editTextColor = Helper.resolveColor(context, android.R.attr.editTextColor); int editTextColor = Helper.resolveColor(context, android.R.attr.editTextColor);
int highlightColor = prefs.getInt("highlight_color", Helper.resolveColor(context, R.attr.colorAccent)); int highlightColor = prefs.getInt("highlight_color", Helper.resolveColor(context, R.attr.colorSecondary));
ColorPickerDialogBuilder builder = ColorPickerDialogBuilder ColorPickerDialogBuilder builder = ColorPickerDialogBuilder
.with(context) .with(context)
@ -393,7 +393,7 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
prefs.edit().remove("highlight_color").apply(); prefs.edit().remove("highlight_color").apply();
btnHighlightColor.setColor(Helper.resolveColor(context, R.attr.colorAccent)); btnHighlightColor.setColor(Helper.resolveColor(context, R.attr.colorSecondary));
} }
}); });

@ -645,7 +645,7 @@ public class Helper {
CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder(); CustomTabsIntent.Builder builder = new CustomTabsIntent.Builder();
builder.setDefaultColorSchemeParams(new CustomTabColorSchemeParams.Builder() builder.setDefaultColorSchemeParams(new CustomTabColorSchemeParams.Builder()
.setToolbarColor(resolveColor(context, R.attr.colorPrimary)) .setToolbarColor(resolveColor(context, R.attr.colorPrimary))
.setSecondaryToolbarColor(resolveColor(context, R.attr.colorPrimaryDark)) .setSecondaryToolbarColor(resolveColor(context, R.attr.colorPrimaryVariant))
.build()); .build());
builder.setColorScheme(Helper.isDarkTheme(context) builder.setColorScheme(Helper.isDarkTheme(context)
? CustomTabsIntent.COLOR_SCHEME_DARK ? CustomTabsIntent.COLOR_SCHEME_DARK

@ -1841,14 +1841,14 @@ public class HtmlHelper {
} }
static Spanned highlightHeaders(Context context, String headers) { static Spanned highlightHeaders(Context context, String headers) {
int colorAccent = Helper.resolveColor(context, R.attr.colorAccent); int colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
SpannableStringBuilder ssb = new SpannableStringBuilder(headers); SpannableStringBuilder ssb = new SpannableStringBuilder(headers);
int index = 0; int index = 0;
for (String line : headers.split("\n")) { for (String line : headers.split("\n")) {
if (line.length() > 0 && !Character.isWhitespace(line.charAt(0))) { if (line.length() > 0 && !Character.isWhitespace(line.charAt(0))) {
int colon = line.indexOf(':'); int colon = line.indexOf(':');
if (colon > 0) if (colon > 0)
ssb.setSpan(new ForegroundColorSpan(colorAccent), index, index + colon, 0); ssb.setSpan(new ForegroundColorSpan(colorSecondary), index, index + colon, 0);
} }
index += line.length() + 1; index += line.length() + 1;
} }
@ -1939,7 +1939,7 @@ public class HtmlHelper {
boolean monospaced_pre = prefs.getBoolean("monospaced_pre", false); boolean monospaced_pre = prefs.getBoolean("monospaced_pre", false);
final int colorPrimary = Helper.resolveColor(context, R.attr.colorPrimary); final int colorPrimary = Helper.resolveColor(context, R.attr.colorPrimary);
final int colorAccent = Helper.resolveColor(context, R.attr.colorAccent); final int colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
final int colorSeparator = Helper.resolveColor(context, R.attr.colorSeparator); final int colorSeparator = Helper.resolveColor(context, R.attr.colorSeparator);
final int dp3 = Helper.dp2pixels(context, 3); final int dp3 = Helper.dp2pixels(context, 3);
final int dp6 = Helper.dp2pixels(context, 6); final int dp6 = Helper.dp2pixels(context, 6);
@ -2315,9 +2315,9 @@ public class HtmlHelper {
parent = parent.parent(); parent = parent.parent();
if (parent == null || "ul".equals(parent.tagName())) if (parent == null || "ul".equals(parent.tagName()))
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P)
setSpan(ssb, new BulletSpan(dp6, colorAccent), start, ssb.length()); setSpan(ssb, new BulletSpan(dp6, colorSecondary), start, ssb.length());
else else
setSpan(ssb, new BulletSpan(dp6, colorAccent, dp3), start, ssb.length()); setSpan(ssb, new BulletSpan(dp6, colorSecondary, dp3), start, ssb.length());
else { else {
// https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ol
int index = 0; int index = 0;
@ -2333,7 +2333,7 @@ public class HtmlHelper {
} }
} }
setSpan(ssb, new NumberSpan(dp6, colorAccent, textSize, index), start, ssb.length()); setSpan(ssb, new NumberSpan(dp6, colorSecondary, textSize, index), start, ssb.length());
} }
break; break;
case "pre": case "pre":

@ -267,7 +267,7 @@ public class StyleHelper {
private boolean setList(MenuItem item) { private boolean setList(MenuItem item) {
Context context = etBody.getContext(); Context context = etBody.getContext();
int colorAccent = Helper.resolveColor(context, R.attr.colorAccent); int colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
int dp3 = Helper.dp2pixels(context, 3); int dp3 = Helper.dp2pixels(context, 3);
int dp6 = Helper.dp2pixels(context, 6); int dp6 = Helper.dp2pixels(context, 6);
@ -292,11 +292,11 @@ public class StyleHelper {
Log.i("Insert " + i + "..." + (j + 1) + " size=" + end); Log.i("Insert " + i + "..." + (j + 1) + " size=" + end);
if (item.getItemId() == R.id.menu_style_list_bullets) if (item.getItemId() == R.id.menu_style_list_bullets)
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P)
t.setSpan(new BulletSpan(dp6, colorAccent), i, j + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE | Spanned.SPAN_PARAGRAPH); t.setSpan(new BulletSpan(dp6, colorSecondary), i, j + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE | Spanned.SPAN_PARAGRAPH);
else else
t.setSpan(new BulletSpan(dp6, colorAccent, dp3), i, j + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE | Spanned.SPAN_PARAGRAPH); t.setSpan(new BulletSpan(dp6, colorSecondary, dp3), i, j + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE | Spanned.SPAN_PARAGRAPH);
else else
t.setSpan(new NumberSpan(dp6, colorAccent, textSize, index++), i, j + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE | Spanned.SPAN_PARAGRAPH); t.setSpan(new NumberSpan(dp6, colorSecondary, textSize, index++), i, j + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE | Spanned.SPAN_PARAGRAPH);
i = j + 1; i = j + 1;
} }
@ -509,14 +509,14 @@ public class StyleHelper {
} else if (NumberSpan.class.isAssignableFrom(type)) { } else if (NumberSpan.class.isAssignableFrom(type)) {
NumberSpan n = (NumberSpan) span; NumberSpan n = (NumberSpan) span;
int dp6 = Helper.dp2pixels(context, 6); int dp6 = Helper.dp2pixels(context, 6);
int colorAccent = Helper.resolveColor(context, R.attr.colorAccent); int colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
return (T) new NumberSpan(dp6, colorAccent, n.getTextSize(), n.getIndex() + 1); return (T) new NumberSpan(dp6, colorSecondary, n.getTextSize(), n.getIndex() + 1);
} else if (BulletSpan.class.isAssignableFrom(type)) { } else if (BulletSpan.class.isAssignableFrom(type)) {
BulletSpan b = (BulletSpan) span; BulletSpan b = (BulletSpan) span;
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) { if (Build.VERSION.SDK_INT < Build.VERSION_CODES.P) {
int dp6 = Helper.dp2pixels(context, 6); int dp6 = Helper.dp2pixels(context, 6);
int colorAccent = Helper.resolveColor(context, R.attr.colorAccent); int colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
return (T) new BulletSpan(dp6, colorAccent); return (T) new BulletSpan(dp6, colorSecondary);
} else } else
return (T) new BulletSpan(b.getGapWidth(), b.getColor(), b.getBulletRadius()); return (T) new BulletSpan(b.getGapWidth(), b.getColor(), b.getBulletRadius());
@ -526,7 +526,7 @@ public class StyleHelper {
static void renumber(Editable text, boolean clean, Context context) { static void renumber(Editable text, boolean clean, Context context) {
int dp6 = Helper.dp2pixels(context, 6); int dp6 = Helper.dp2pixels(context, 6);
int colorAccent = Helper.resolveColor(context, R.attr.colorAccent); int colorSecondary = Helper.resolveColor(context, R.attr.colorSecondary);
Log.i("Renumber clean=" + clean + " text=" + text); Log.i("Renumber clean=" + clean + " text=" + text);
@ -557,7 +557,7 @@ public class StyleHelper {
NumberSpan ns = (NumberSpan) span; NumberSpan ns = (NumberSpan) span;
if (index != ns.getIndex()) { if (index != ns.getIndex()) {
NumberSpan clone = new NumberSpan(dp6, colorAccent, ns.getTextSize(), index); NumberSpan clone = new NumberSpan(dp6, colorSecondary, ns.getTextSize(), index);
text.removeSpan(span); text.removeSpan(span);
text.setSpan(clone, start, end, flags); text.setSpan(clone, start, end, flags);
} }

@ -2,7 +2,7 @@
<selector xmlns:android="http://schemas.android.com/apk/res/android"> <selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"> <item android:state_pressed="true">
<shape android:shape="rectangle"> <shape android:shape="rectangle">
<solid android:color="?attr/colorAccent" /> <solid android:color="?attr/colorSecondary" />
<size android:width="6dp" android:height="60dp" /> <size android:width="6dp" android:height="60dp" />
</shape> </shape>
</item> </item>

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" <shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"> android:shape="rectangle">
<solid android:color="?attr/colorAccent" /> <solid android:color="?attr/colorSecondary" />
</shape> </shape>

@ -40,7 +40,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:contentDescription="@string/title_legend_thread" android:contentDescription="@string/title_legend_thread"
android:padding="12dp" android:padding="12dp"
android:tint="?attr/colorAccent" android:tint="?attr/colorSecondary"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/ivThread" app:layout_constraintTop_toBottomOf="@id/ivThread"
app:srcCompat="@drawable/twotone_message_24" /> app:srcCompat="@drawable/twotone_message_24" />

@ -54,7 +54,7 @@
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="0dp" android:layout_height="0dp"
android:alpha="0.1" android:alpha="0.1"
android:background="?attr/colorAccent" android:background="?attr/colorSecondary"
app:layout_constraintBottom_toTopOf="@id/vSeparatorAccount" app:layout_constraintBottom_toTopOf="@id/vSeparatorAccount"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"

@ -8,7 +8,7 @@
android:id="@+id/vwColor" android:id="@+id/vwColor"
android:layout_width="6dp" android:layout_width="6dp"
android:layout_height="0dp" android:layout_height="0dp"
android:background="?attr/colorAccent" android:background="?attr/colorSecondary"
app:layout_constraintBottom_toBottomOf="@+id/paddingBottom" app:layout_constraintBottom_toBottomOf="@+id/paddingBottom"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

@ -7,7 +7,7 @@
android:id="@+id/vwColor" android:id="@+id/vwColor"
android:layout_width="6dp" android:layout_width="6dp"
android:layout_height="0dp" android:layout_height="0dp"
android:background="?attr/colorAccent" android:background="?attr/colorSecondary"
app:layout_constraintBottom_toBottomOf="@+id/paddingBottom" app:layout_constraintBottom_toBottomOf="@+id/paddingBottom"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

@ -19,7 +19,7 @@
android:id="@+id/vwColor" android:id="@+id/vwColor"
android:layout_width="6dp" android:layout_width="6dp"
android:layout_height="0dp" android:layout_height="0dp"
android:background="?attr/colorAccent" android:background="?attr/colorSecondary"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

@ -20,7 +20,7 @@
android:id="@+id/vwColor" android:id="@+id/vwColor"
android:layout_width="6dp" android:layout_width="6dp"
android:layout_height="0dp" android:layout_height="0dp"
android:background="?attr/colorAccent" android:background="?attr/colorSecondary"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

@ -17,7 +17,7 @@
android:id="@+id/vwColor" android:id="@+id/vwColor"
android:layout_width="6dp" android:layout_width="6dp"
android:layout_height="0dp" android:layout_height="0dp"
android:background="?attr/colorAccent" android:background="?attr/colorSecondary"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

@ -19,7 +19,7 @@
android:id="@+id/vwColor" android:id="@+id/vwColor"
android:layout_width="6dp" android:layout_width="6dp"
android:layout_height="0dp" android:layout_height="0dp"
android:background="?attr/colorAccent" android:background="?attr/colorSecondary"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent" />

@ -0,0 +1,209 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppThemeBase" parent="Theme.MaterialComponents.DayNight">
<item name="themeName">dark</item>
<item name="android:windowDisablePreview">true</item>
<item name="android:windowAnimationStyle">@style/activityAnimationStyle</item>
<item name="android:navigationBarColor">@color/black</item>
<item name="colorRead">@color/colorReadDark</item>
<item name="colorUnread">@color/colorUnreadDark</item>
<item name="colorHighlight">@color/colorHighlightDark</item>
<item name="colorEncrypt">@color/colorEncryptDark</item>
<item name="colorSeparator">@color/darkColorSeparator</item>
<item name="colorThumb">@color/darkColorThumb</item>
<item name="colorWarning">@color/darkColorWarning</item>
<item name="colorDrawerScrim">@color/darkColorDrawerScrim</item>
<item name="colorDrawerText">@color/darkColorDrawerText</item>
<item name="colorDrawerBackground">@color/darkColorDrawerBackground</item>
<item name="colorCardBackground">@color/darkColorCardBackground</item>
<item name="colorActionForeground">@color/darkActionForeground</item>
<item name="colorActionForegroundDisabled">@color/darkActionForegroundDisabled</item>
<item name="colorActionBackground">@color/darkActionBackground</item>
<item name="colorFabForeground">@color/white</item>
<item name="activatableItemBackground">@drawable/activatable_item_background_dark</item>
<item name="android:checkboxStyle">@style/checkboxStyle</item>
<item name="android:buttonStyle">@style/buttonStyle</item>
<item name="android:buttonStyleSmall">@style/buttonStyleSmall</item>
<item name="android:buttonStyleToggle">@style/buttonStyleToggle</item>
<item name="android:radioButtonStyle">@style/radioButtonStyle</item>
<item name="android:scrollbarSize">6dp</item>
<item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>
<item name="android:scrollbarTrackVertical">@drawable/scroll_track</item>
<item name="android:scrollbarFadeDuration">5000</item>
</style>
<style name="AppThemeBlueOrange" parent="AppThemeBase">
<item name="colorPrimary">@color/darkBluePrimary</item>
<item name="colorPrimary">@color/darkBluePrimaryDark</item>
<item name="colorSecondary">@color/darkAmberSecondary</item>
<item name="colorUnreadHighlight">@color/darkAmberSecondary</item>
<item name="colorFabBackground">@color/darkAmberSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkBluePrimary</item>
</style>
<style name="AppThemeOrangeBlue" parent="AppThemeBase">
<item name="colorPrimary">@color/darkAmberPrimary</item>
<item name="colorPrimary">@color/darkAmberPrimaryDark</item>
<item name="colorSecondary">@color/darkBlueSecondary</item>
<item name="colorUnreadHighlight">@color/darkBlueSecondary</item>
<item name="colorFabBackground">@color/darkBlueSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkAmberPrimary</item>
</style>
<style name="AppThemeYellowPurple" parent="AppThemeBase">
<item name="colorPrimary">@color/darkYellowPrimary</item>
<item name="colorPrimary">@color/darkYellowPrimaryDark</item>
<item name="colorSecondary">@color/darkPurpleSecondary</item>
<item name="colorUnreadHighlight">@color/darkPurpleSecondary</item>
<item name="colorFabBackground">@color/darkPurpleSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkYellowPrimary</item>
<item name="android:textColorLink">@color/darkPurpleSecondary</item>
</style>
<style name="AppThemePurpleYellow" parent="AppThemeBase">
<item name="colorPrimary">@color/darkPurplePrimary</item>
<item name="colorPrimary">@color/darkPurplePrimaryDark</item>
<item name="colorSecondary">@color/darkYellowSecondary</item>
<item name="colorUnreadHighlight">@color/darkYellowSecondary</item>
<item name="colorFabBackground">@color/darkYellowSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkPurplePrimary</item>
<item name="android:textColorLink">@color/darkYellowSecondary</item>
</style>
<style name="AppThemeRedGreen" parent="AppThemeBase">
<item name="colorPrimary">@color/darkRedPrimary</item>
<item name="colorPrimary">@color/darkRedPrimaryDark</item>
<item name="colorSecondary">@color/darkGreenSecondary</item>
<item name="colorUnreadHighlight">@color/darkGreenSecondary</item>
<item name="colorFabBackground">@color/darkGreenSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkRedPrimary</item>
<item name="android:textColorLink">@color/darkGreenSecondary</item>
</style>
<style name="AppThemeGreenRed" parent="AppThemeBase">
<item name="colorPrimary">@color/darkGreenPrimary</item>
<item name="colorPrimary">@color/darkGreenPrimaryDark</item>
<item name="colorSecondary">@color/darkRedSecondary</item>
<item name="colorUnreadHighlight">@color/darkRedSecondary</item>
<item name="colorFabBackground">@color/darkRedSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkGreenPrimary</item>
<item name="android:textColorLink">@color/darkRedSecondary</item>
</style>
<!-- Black -->
<style name="AppThemeBlueOrangeBlack" parent="AppThemeBlueOrange">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeOrangeBlueBlack" parent="AppThemeOrangeBlue">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeYellowPurpleBlack" parent="AppThemeYellowPurple">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemePurpleYellowBlack" parent="AppThemePurpleYellow">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeRedGreenBlack" parent="AppThemeRedGreen">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeGreenRedBlack" parent="AppThemeGreenRed">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<!-- Other -->
<style name="AppThemeBlack" parent="AppThemeBlueOrange">
<item name="themeName">black</item>
<item name="colorPrimary">@color/blackPrimary</item>
<item name="colorPrimary">@color/blackPrimaryDark</item>
<item name="colorSecondary">@color/blackSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/blackPrimary</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeGreySteelBlue" parent="AppThemeBase">
<item name="themeName">black</item>
<item name="colorPrimary">@color/greyPrimary</item>
<item name="colorPrimary">@color/greyPrimaryDark</item>
<item name="colorSecondary">@color/greySecondary</item>
<item name="colorUnreadHighlight">@color/greyAccentLight</item>
<item name="colorSeparator">@color/greyPrimary</item>
<item name="colorActionBackground">@color/greyPrimary</item>
<item name="colorFabBackground">@color/greyAccentDark</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/greyPrimary</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
</resources>

@ -58,68 +58,68 @@
<!-- Light blue 600 / Amber 600 --> <!-- Light blue 600 / Amber 600 -->
<color name="lightBluePrimary">#039be5</color> <color name="lightBluePrimary">#039be5</color>
<color name="lightBluePrimaryDark">#006db3</color> <color name="lightBluePrimaryDark">#006db3</color>
<color name="lightAmberAccent">#ffb300</color> <color name="lightAmberSecondary">#ffb300</color>
<color name="lightAmberAccentDark">#c68400</color> <color name="lightAmberAccentDark">#c68400</color>
<!-- Amber 600 / Light blue 600 --> <!-- Amber 600 / Light blue 600 -->
<color name="lightAmberPrimary">#ffb300</color> <color name="lightAmberPrimary">#ffb300</color>
<color name="lightAmberPrimaryDark">#c68400</color> <color name="lightAmberPrimaryDark">#c68400</color>
<color name="lightBlueAccent">#039be5</color> <color name="lightBlueSecondary">#039be5</color>
<!-- Yellow 600 / Purple 600 --> <!-- Yellow 600 / Purple 600 -->
<color name="lightYellowPrimary">#fdd835</color> <color name="lightYellowPrimary">#fdd835</color>
<color name="lightYellowPrimaryDark">#c6a700</color> <color name="lightYellowPrimaryDark">#c6a700</color>
<color name="lightPurpleAccent">#8e24aa</color> <color name="lightPurpleSecondary">#8e24aa</color>
<!-- Purple 600 / Yellow 800 --> <!-- Purple 600 / Yellow 800 -->
<color name="lightPurplePrimary">#8e24aa</color> <color name="lightPurplePrimary">#8e24aa</color>
<color name="lightPurplePrimaryDark">#5c007a</color> <color name="lightPurplePrimaryDark">#5c007a</color>
<color name="lightYellowAccent">#f9a825</color> <color name="lightYellowSecondary">#f9a825</color>
<!-- Red 600 / Green 600 --> <!-- Red 600 / Green 600 -->
<color name="lightRedPrimary">#e53935</color> <color name="lightRedPrimary">#e53935</color>
<color name="lightRedPrimaryDark">#ab000d</color> <color name="lightRedPrimaryDark">#ab000d</color>
<color name="lightGreenAccent">#43a047</color> <color name="lightGreenSecondary">#43a047</color>
<!-- Green 600 / Red 600 --> <!-- Green 600 / Red 600 -->
<color name="lightGreenPrimary">#43a047</color> <color name="lightGreenPrimary">#43a047</color>
<color name="lightGreenPrimaryDark">#00701a</color> <color name="lightGreenPrimaryDark">#00701a</color>
<color name="lightRedAccent">#e53935</color> <color name="lightRedSecondary">#e53935</color>
<!-- Light blue 900 / Amber 600 --> <!-- Light blue 900 / Amber 600 -->
<color name="darkBluePrimary">#01579b</color> <color name="darkBluePrimary">#01579b</color>
<color name="darkBluePrimaryDark">#002f6c</color> <color name="darkBluePrimaryDark">#002f6c</color>
<color name="darkAmberAccent">#ffb300</color> <color name="darkAmberSecondary">#ffb300</color>
<!-- Amber 900 / Light blue 300--> <!-- Amber 900 / Light blue 300-->
<color name="darkAmberPrimary">#ff6f00</color> <color name="darkAmberPrimary">#ff6f00</color>
<color name="darkAmberPrimaryDark">#c43e00</color> <color name="darkAmberPrimaryDark">#c43e00</color>
<color name="darkBlueAccent">#4fc3f7</color> <color name="darkBlueSecondary">#4fc3f7</color>
<!-- Yellow 900 / Purple 300 --> <!-- Yellow 900 / Purple 300 -->
<color name="darkYellowPrimary">#f57f17</color> <color name="darkYellowPrimary">#f57f17</color>
<color name="darkYellowPrimaryDark">#bc5100</color> <color name="darkYellowPrimaryDark">#bc5100</color>
<color name="darkPurpleAccent">#ba68c8</color> <color name="darkPurpleSecondary">#ba68c8</color>
<!-- Purple 900 / Yellow 600 --> <!-- Purple 900 / Yellow 600 -->
<color name="darkPurplePrimary">#4a148c</color> <color name="darkPurplePrimary">#4a148c</color>
<color name="darkPurplePrimaryDark">#12005e</color> <color name="darkPurplePrimaryDark">#12005e</color>
<color name="darkYellowAccent">#fdd835</color> <color name="darkYellowSecondary">#fdd835</color>
<!-- Red 900 / Green 300 --> <!-- Red 900 / Green 300 -->
<color name="darkRedPrimary">#b71c1c</color> <color name="darkRedPrimary">#b71c1c</color>
<color name="darkRedPrimaryDark">#7f0000</color> <color name="darkRedPrimaryDark">#7f0000</color>
<color name="darkGreenAccent">#81c784</color> <color name="darkGreenSecondary">#81c784</color>
<!-- Green 900 / Red 300 --> <!-- Green 900 / Red 300 -->
<color name="darkGreenPrimary">#1b5e20</color> <color name="darkGreenPrimary">#1b5e20</color>
<color name="darkGreenPrimaryDark">#003300</color> <color name="darkGreenPrimaryDark">#003300</color>
<color name="darkRedAccent">#e57373</color> <color name="darkRedSecondary">#e57373</color>
<!-- Grey 800 / Amber 800 --> <!-- Grey 800 / Amber 800 -->
<color name="blackPrimary">#424242</color> <color name="blackPrimary">#424242</color>
<color name="blackPrimaryDark">#1b1b1b</color> <color name="blackPrimaryDark">#1b1b1b</color>
<color name="blackAccent">#ff8f00</color> <color name="blackSecondary">#ff8f00</color>
<!-- Grey 900 --> <!-- Grey 900 -->
<color name="blackAndWhitePrimary">#212121</color> <color name="blackAndWhitePrimary">#212121</color>
@ -129,7 +129,7 @@
<!-- Grey 800 / Blue grey 300 --> <!-- Grey 800 / Blue grey 300 -->
<color name="greyPrimary">#424242</color> <color name="greyPrimary">#424242</color>
<color name="greyPrimaryDark">#1b1b1b</color> <color name="greyPrimaryDark">#1b1b1b</color>
<color name="greyAccent">#90a4ae</color> <color name="greySecondary">#90a4ae</color>
<color name="greyAccentDark">#62757f</color> <color name="greyAccentDark">#62757f</color>
<color name="greyAccentLight">#c1d5e0</color> <color name="greyAccentLight">#c1d5e0</color>

@ -1,414 +1,5 @@
<resources> <resources>
<attr name="themeName" format="string" />
<attr name="colorRead" format="reference" />
<attr name="colorUnread" format="reference" />
<attr name="colorUnreadHighlight" format="reference" />
<attr name="colorHighlight" format="reference" />
<attr name="colorEncrypt" format="reference" />
<attr name="colorSeparator" format="reference" />
<attr name="colorThumb" format="reference" />
<attr name="colorWarning" format="reference" />
<attr name="colorDrawerScrim" format="reference" />
<attr name="colorDrawerText" format="reference" />
<attr name="colorDrawerBackground" format="reference" />
<attr name="colorCardBackground" format="reference" />
<attr name="colorActionForeground" format="reference" />
<attr name="colorActionForegroundDisabled" format="reference" />
<attr name="colorActionBackground" format="reference" />
<attr name="colorFabForeground" format="reference" />
<attr name="colorFabBackground" format="reference" />
<attr name="colorInfoForeground" format="reference" />
<attr name="colorInfoBackground" format="reference" />
<attr name="activatableItemBackground" format="reference" />
<style name="AppThemeBaseLight" parent="Theme.MaterialComponents.DayNight.NoActionBar">
<item name="themeName">light</item>
<item name="android:windowDisablePreview">true</item>
<item name="android:windowAnimationStyle">@style/activityAnimationStyle</item>
<item name="colorRead">@color/colorReadLight</item>
<item name="colorUnread">@color/colorUnreadLight</item>
<item name="colorHighlight">@color/colorHighlightLight</item>
<item name="colorEncrypt">@color/colorEncryptLight</item>
<item name="colorSeparator">@color/lightColorSeparator</item>
<item name="colorThumb">@color/lightColorThumb</item>
<item name="colorWarning">@color/lightColorWarning</item>
<item name="colorDrawerScrim">@color/lightColorDrawerScrim</item>
<item name="colorDrawerText">@color/lightColorDrawerText</item>
<item name="colorDrawerBackground">@color/lightColorDrawerBackground</item>
<item name="colorCardBackground">@color/lightColorCardBackground</item>
<item name="colorActionForeground">@color/lightActionForeground</item>
<item name="colorActionForegroundDisabled">@color/lightActionForegroundDisabled</item>
<item name="colorActionBackground">@color/lightActionBackground</item>
<item name="colorFabForeground">@color/white</item>
<item name="activatableItemBackground">@drawable/activatable_item_background_light</item>
<item name="android:checkboxStyle">@style/checkboxStyle</item>
<item name="android:buttonStyle">@style/buttonStyle</item>
<item name="android:buttonStyleSmall">@style/buttonStyleSmall</item>
<item name="android:buttonStyleToggle">@style/buttonStyleToggle</item>
<item name="android:radioButtonStyle">@style/radioButtonStyle</item>
<item name="android:scrollbarSize">6dp</item>
<item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>
<item name="android:scrollbarTrackVertical">@drawable/scroll_track</item>
<item name="android:scrollbarFadeDuration">5000</item>
</style>
<style name="AppThemeBaseDark" parent="Theme.MaterialComponents.DayNight.NoActionBar">
<item name="themeName">dark</item>
<item name="android:windowDisablePreview">true</item>
<item name="android:windowAnimationStyle">@style/activityAnimationStyle</item>
<item name="android:navigationBarColor">@color/black</item>
<item name="colorRead">@color/colorReadDark</item>
<item name="colorUnread">@color/colorUnreadDark</item>
<item name="colorHighlight">@color/colorHighlightDark</item>
<item name="colorEncrypt">@color/colorEncryptDark</item>
<item name="colorSeparator">@color/darkColorSeparator</item>
<item name="colorThumb">@color/darkColorThumb</item>
<item name="colorWarning">@color/darkColorWarning</item>
<item name="colorDrawerScrim">@color/darkColorDrawerScrim</item>
<item name="colorDrawerText">@color/darkColorDrawerText</item>
<item name="colorDrawerBackground">@color/darkColorDrawerBackground</item>
<item name="colorCardBackground">@color/darkColorCardBackground</item>
<item name="colorActionForeground">@color/darkActionForeground</item>
<item name="colorActionForegroundDisabled">@color/darkActionForegroundDisabled</item>
<item name="colorActionBackground">@color/darkActionBackground</item>
<item name="colorFabForeground">@color/white</item>
<item name="activatableItemBackground">@drawable/activatable_item_background_dark</item>
<item name="android:checkboxStyle">@style/checkboxStyle</item>
<item name="android:buttonStyle">@style/buttonStyle</item>
<item name="android:buttonStyleSmall">@style/buttonStyleSmall</item>
<item name="android:buttonStyleToggle">@style/buttonStyleToggle</item>
<item name="android:radioButtonStyle">@style/radioButtonStyle</item>
<item name="android:scrollbarSize">6dp</item>
<item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>
<item name="android:scrollbarTrackVertical">@drawable/scroll_track</item>
<item name="android:scrollbarFadeDuration">5000</item>
</style>
<!-- Light -->
<style name="AppThemeBlueOrangeLight" parent="AppThemeBaseLight">
<item name="colorPrimary">@color/lightBluePrimary</item>
<item name="colorPrimaryDark">@color/lightBluePrimaryDark</item>
<item name="colorAccent">@color/lightAmberAccent</item>
<item name="colorUnreadHighlight">@color/lightAmberAccentDark</item>
<item name="colorWarning">@color/lightAmberAccent</item>
<item name="colorFabBackground">@color/lightAmberAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightBluePrimary</item>
<item name="android:textColorLink">@color/lightAmberAccentDark</item>
</style>
<style name="AppThemeOrangeBlueLight" parent="AppThemeBaseLight">
<item name="colorPrimary">@color/lightAmberPrimary</item>
<item name="colorPrimaryDark">@color/lightAmberPrimaryDark</item>
<item name="colorAccent">@color/lightBlueAccent</item>
<item name="colorUnreadHighlight">@color/lightBlueAccent</item>
<item name="colorFabBackground">@color/lightBlueAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightAmberPrimary</item>
<item name="android:textColorLink">@color/lightBlueAccent</item>
</style>
<style name="AppThemeYellowPurpleLight" parent="AppThemeBaseLight">
<item name="colorPrimary">@color/lightYellowPrimary</item>
<item name="colorPrimaryDark">@color/lightYellowPrimaryDark</item>
<item name="colorAccent">@color/lightPurpleAccent</item>
<item name="colorUnreadHighlight">@color/lightPurpleAccent</item>
<item name="colorFabBackground">@color/lightPurpleAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightYellowPrimary</item>
<item name="android:textColorLink">@color/lightPurpleAccent</item>
</style>
<style name="AppThemePurpleYellowLight" parent="AppThemeBaseLight">
<item name="colorPrimary">@color/lightPurplePrimary</item>
<item name="colorPrimaryDark">@color/lightPurplePrimaryDark</item>
<item name="colorAccent">@color/lightYellowAccent</item>
<item name="colorUnreadHighlight">@color/lightYellowAccent</item>
<item name="colorFabBackground">@color/lightYellowAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightPurplePrimary</item>
<item name="android:textColorLink">@color/lightYellowAccent</item>
</style>
<style name="AppThemeRedGreenLight" parent="AppThemeBaseLight">
<item name="colorPrimary">@color/lightRedPrimary</item>
<item name="colorPrimaryDark">@color/lightRedPrimaryDark</item>
<item name="colorAccent">@color/lightGreenAccent</item>
<item name="colorUnreadHighlight">@color/lightGreenAccent</item>
<item name="colorFabBackground">@color/lightGreenAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightRedPrimary</item>
<item name="android:textColorLink">@color/lightGreenAccent</item>
</style>
<style name="AppThemeGreenRedLight" parent="AppThemeBaseLight">
<item name="colorPrimary">@color/lightGreenPrimary</item>
<item name="colorPrimaryDark">@color/lightGreenPrimaryDark</item>
<item name="colorAccent">@color/lightRedAccent</item>
<item name="colorUnreadHighlight">@color/lightRedAccent</item>
<item name="colorFabBackground">@color/lightRedAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightGreenPrimary</item>
<item name="android:textColorLink">@color/lightRedAccent</item>
</style>
<!-- Dark -->
<style name="AppThemeBlueOrangeDark" parent="AppThemeBaseDark">
<item name="colorPrimary">@color/darkBluePrimary</item>
<item name="colorPrimaryDark">@color/darkBluePrimaryDark</item>
<item name="colorAccent">@color/darkAmberAccent</item>
<item name="colorUnreadHighlight">@color/darkAmberAccent</item>
<item name="colorFabBackground">@color/darkAmberAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkBluePrimary</item>
</style>
<style name="AppThemeOrangeBlueDark" parent="AppThemeBaseDark">
<item name="colorPrimary">@color/darkAmberPrimary</item>
<item name="colorPrimaryDark">@color/darkAmberPrimaryDark</item>
<item name="colorAccent">@color/darkBlueAccent</item>
<item name="colorUnreadHighlight">@color/darkBlueAccent</item>
<item name="colorFabBackground">@color/darkBlueAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkAmberPrimary</item>
</style>
<style name="AppThemeYellowPurpleDark" parent="AppThemeBaseDark">
<item name="colorPrimary">@color/darkYellowPrimary</item>
<item name="colorPrimaryDark">@color/darkYellowPrimaryDark</item>
<item name="colorAccent">@color/darkPurpleAccent</item>
<item name="colorUnreadHighlight">@color/darkPurpleAccent</item>
<item name="colorFabBackground">@color/darkPurpleAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkYellowPrimary</item>
<item name="android:textColorLink">@color/darkPurpleAccent</item>
</style>
<style name="AppThemePurpleYellowDark" parent="AppThemeBaseDark">
<item name="colorPrimary">@color/darkPurplePrimary</item>
<item name="colorPrimaryDark">@color/darkPurplePrimaryDark</item>
<item name="colorAccent">@color/darkYellowAccent</item>
<item name="colorUnreadHighlight">@color/darkYellowAccent</item>
<item name="colorFabBackground">@color/darkYellowAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkPurplePrimary</item>
<item name="android:textColorLink">@color/darkYellowAccent</item>
</style>
<style name="AppThemeRedGreenDark" parent="AppThemeBaseDark">
<item name="colorPrimary">@color/darkRedPrimary</item>
<item name="colorPrimaryDark">@color/darkRedPrimaryDark</item>
<item name="colorAccent">@color/darkGreenAccent</item>
<item name="colorUnreadHighlight">@color/darkGreenAccent</item>
<item name="colorFabBackground">@color/darkGreenAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkRedPrimary</item>
<item name="android:textColorLink">@color/darkGreenAccent</item>
</style>
<style name="AppThemeGreenRedDark" parent="AppThemeBaseDark">
<item name="colorPrimary">@color/darkGreenPrimary</item>
<item name="colorPrimaryDark">@color/darkGreenPrimaryDark</item>
<item name="colorAccent">@color/darkRedAccent</item>
<item name="colorUnreadHighlight">@color/darkRedAccent</item>
<item name="colorFabBackground">@color/darkRedAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/darkGreenPrimary</item>
<item name="android:textColorLink">@color/darkRedAccent</item>
</style>
<!-- Black -->
<style name="AppThemeBlueOrangeBlack" parent="AppThemeBlueOrangeDark">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeOrangeBlueBlack" parent="AppThemeOrangeBlueDark">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeYellowPurpleBlack" parent="AppThemeYellowPurpleDark">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemePurpleYellowBlack" parent="AppThemePurpleYellowDark">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeRedGreenBlack" parent="AppThemeRedGreenDark">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeGreenRedBlack" parent="AppThemeGreenRedDark">
<item name="themeName">black</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<!-- Other -->
<style name="AppThemeBlack" parent="AppThemeBlueOrangeDark">
<item name="themeName">black</item>
<item name="colorPrimary">@color/blackPrimary</item>
<item name="colorPrimaryDark">@color/blackPrimaryDark</item>
<item name="colorAccent">@color/blackAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/blackPrimary</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="AppThemeBlackAndWhite" parent="AppThemeBlack">
<item name="colorPrimary">@color/blackAndWhitePrimary</item>
<item name="colorPrimaryDark">@color/blackAndWhitePrimaryDark</item>
<item name="colorAccent">@color/white</item>
<item name="android:textColor">@color/bw_textcolor</item>
<item name="android:textColorPrimary">@color/bw_textcolor</item>
<item name="android:textColorSecondary">@color/bw_textcolor</item>
<item name="android:textColorTertiary">@color/bw_textcolor</item>
<item name="android:textColorPrimaryInverse">@color/bw_textcolor_inverse</item>
<item name="android:textColorSecondaryInverse">@color/bw_textcolor_inverse</item>
<item name="android:textColorTertiaryInverse">@color/bw_textcolor_inverse</item>
<item name="android:textColorLink">@color/lightBluePrimary</item>
<item name="colorWarning">@color/lightColorWarning</item>
<item name="colorRead">@color/white</item>
<item name="colorUnread">@color/white</item>
<item name="colorUnreadHighlight">@color/white</item>
<item name="colorFabForeground">@color/white</item>
<item name="colorFabBackground">@color/blackAndWhitePrimaryLight</item>
</style>
<style name="AppThemeGreySteelBlueLight" parent="AppThemeBaseLight">
<item name="colorPrimary">@color/greyPrimary</item>
<item name="colorPrimaryDark">@color/greyPrimaryDark</item>
<item name="colorAccent">@color/greyAccent</item>
<item name="colorUnreadHighlight">@color/greyAccentDark</item>
<item name="colorEncrypt">@color/colorEncryptDark</item>
<item name="colorFabBackground">@color/greyAccent</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/greyPrimary</item>
</style>
<style name="AppThemeGreySteelBlueDark" parent="AppThemeBaseDark">
<item name="themeName">black</item>
<item name="colorPrimary">@color/greyPrimary</item>
<item name="colorPrimaryDark">@color/greyPrimaryDark</item>
<item name="colorAccent">@color/greyAccent</item>
<item name="colorUnreadHighlight">@color/greyAccentLight</item>
<item name="colorSeparator">@color/greyPrimary</item>
<item name="colorActionBackground">@color/greyPrimary</item>
<item name="colorFabBackground">@color/greyAccentDark</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/greyPrimary</item>
<item name="android:windowBackground">@drawable/black_background</item>
<item name="colorDrawerBackground">@color/black</item>
</style>
<style name="Theme.AppCompat.Translucent" parent="Theme.AppCompat.NoActionBar">
<item name="android:background">@color/transparent</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation</item>
</style>
<style name="activityAnimationStyle" parent="@android:style/Animation.Activity"> <style name="activityAnimationStyle" parent="@android:style/Animation.Activity">
<item name="android:activityOpenEnterAnimation">@anim/activity_open_enter</item> <item name="android:activityOpenEnterAnimation">@anim/activity_open_enter</item>
@ -428,26 +19,26 @@
<item name="android:textColor">?android:attr/textColorSecondary</item> <item name="android:textColor">?android:attr/textColorSecondary</item>
</style> </style>
<style name="buttonStyle" parent="Base.Widget.AppCompat.Button"> <style name="buttonStyle" parent="Widget.MaterialComponents.Button">
<item name="android:textAppearance">@style/TextAppearance.AppCompat.Medium</item> <item name="android:textAppearance">@style/TextAppearance.MaterialComponents.Button</item>
</style> </style>
<style name="buttonStyleSmall" parent="Base.Widget.AppCompat.Button.Small"> <style name="buttonStyleSmall" parent="Widget.MaterialComponents.Button">
<item name="android:textAppearance">@style/TextAppearance.AppCompat.Small</item> <item name="android:textAppearance">@style/TextAppearance.MaterialComponents.Body2</item>
<item name="android:minHeight">0dp</item> <item name="android:minHeight">0dp</item>
<item name="android:minWidth">0dp</item> <item name="android:minWidth">0dp</item>
</style> </style>
<style name="buttonStyleToggle" parent="Base.Widget.AppCompat.Button"> <style name="buttonStyleToggle" parent="Widget.MaterialComponents.Button">
<item name="android:textAppearance">@style/TextAppearance.AppCompat.Medium</item> <item name="android:textAppearance">@style/TextAppearance.AppCompat.Medium</item>
</style> </style>
<style name="radioButtonStyle" parent="Base.Widget.AppCompat.CompoundButton.RadioButton"> <style name="radioButtonStyle" parent="Widget.MaterialComponents.Button">
<item name="android:textAppearance">@style/TextAppearance.AppCompat.Small</item> <item name="android:textAppearance">@style/TextAppearance.AppCompat.Small</item>
<item name="android:textColor">?android:attr/textColorSecondary</item> <item name="android:textColor">?android:attr/textColorSecondary</item>
</style> </style>
<style name="popupMenuStyle" parent="Base.Widget.AppCompat.PopupMenu"> <style name="popupMenuStyle" parent="ThemeOverlay.MaterialComponents.MaterialAlertDialog">
<item name="android:scrollbarSize">6dp</item> <item name="android:scrollbarSize">6dp</item>
<item name="android:scrollbarThumbVertical">@drawable/scroll_thumb_popup</item> <item name="android:scrollbarThumbVertical">@drawable/scroll_thumb_popup</item>
<item name="android:scrollbarTrackVertical">@drawable/scroll_track_popup</item> <item name="android:scrollbarTrackVertical">@drawable/scroll_track_popup</item>

@ -0,0 +1,231 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<attr name="themeName" format="string" />
<attr name="colorRead" format="reference" />
<attr name="colorUnread" format="reference" />
<attr name="colorUnreadHighlight" format="reference" />
<attr name="colorHighlight" format="reference" />
<attr name="colorEncrypt" format="reference" />
<attr name="colorSeparator" format="reference" />
<attr name="colorThumb" format="reference" />
<attr name="colorWarning" format="reference" />
<attr name="colorDrawerScrim" format="reference" />
<attr name="colorDrawerText" format="reference" />
<attr name="colorDrawerBackground" format="reference" />
<attr name="colorCardBackground" format="reference" />
<attr name="colorActionForeground" format="reference" />
<attr name="colorActionForegroundDisabled" format="reference" />
<attr name="colorActionBackground" format="reference" />
<attr name="colorFabForeground" format="reference" />
<attr name="colorFabBackground" format="reference" />
<attr name="colorInfoForeground" format="reference" />
<attr name="colorInfoBackground" format="reference" />
<attr name="activatableItemBackground" format="reference" />
<style name="AppThemeBase" parent="Theme.MaterialComponents.DayNight">
<item name="themeName">light</item>
<item name="android:windowDisablePreview">true</item>
<item name="android:windowAnimationStyle">@style/activityAnimationStyle</item>
<item name="colorRead">@color/colorReadLight</item>
<item name="colorUnread">@color/colorUnreadLight</item>
<item name="colorHighlight">@color/colorHighlightLight</item>
<item name="colorEncrypt">@color/colorEncryptLight</item>
<item name="colorSeparator">@color/lightColorSeparator</item>
<item name="colorThumb">@color/lightColorThumb</item>
<item name="colorWarning">@color/lightColorWarning</item>
<item name="colorDrawerScrim">@color/lightColorDrawerScrim</item>
<item name="colorDrawerText">@color/lightColorDrawerText</item>
<item name="colorDrawerBackground">@color/lightColorDrawerBackground</item>
<item name="colorCardBackground">@color/lightColorCardBackground</item>
<item name="colorActionForeground">@color/lightActionForeground</item>
<item name="colorActionForegroundDisabled">@color/lightActionForegroundDisabled</item>
<item name="colorActionBackground">@color/lightActionBackground</item>
<item name="colorFabForeground">@color/white</item>
<item name="activatableItemBackground">@drawable/activatable_item_background_light</item>
<item name="toolbarStyle">@style/Widget.MaterialComponents.Toolbar.Primary</item>
<item name="android:checkboxStyle">@style/checkboxStyle</item>
<item name="android:buttonStyle">@style/buttonStyle</item>
<item name="android:buttonStyleSmall">@style/buttonStyleSmall</item>
<item name="android:buttonStyleToggle">@style/buttonStyleToggle</item>
<item name="android:radioButtonStyle">@style/radioButtonStyle</item>
<item name="android:scrollbarSize">6dp</item>
<item name="android:scrollbarThumbVertical">@drawable/scroll_thumb</item>
<item name="android:scrollbarTrackVertical">@drawable/scroll_track</item>
<item name="android:scrollbarFadeDuration">5000</item>
</style>
<!-- Light -->
<style name="AppThemeBlueOrange" parent="AppThemeBase">
<item name="colorPrimary">@color/lightBluePrimary</item>
<item name="colorPrimaryVariant">@color/lightBluePrimaryDark</item>
<item name="colorSecondary">@color/lightAmberSecondary</item>
<item name="colorUnreadHighlight">@color/lightAmberAccentDark</item>
<item name="colorWarning">@color/lightAmberSecondary</item>
<item name="colorFabBackground">@color/lightAmberSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightBluePrimary</item>
<item name="android:textColorLink">@color/lightAmberAccentDark</item>
</style>
<style name="AppThemeOrangeBlue" parent="AppThemeBase">
<item name="colorPrimary">@color/lightAmberPrimary</item>
<item name="colorPrimaryVariant">@color/lightAmberPrimaryDark</item>
<item name="colorSecondary">@color/lightBlueSecondary</item>
<item name="colorUnreadHighlight">@color/lightBlueSecondary</item>
<item name="colorFabBackground">@color/lightBlueSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightAmberPrimary</item>
<item name="android:textColorLink">@color/lightBlueSecondary</item>
</style>
<style name="AppThemeYellowPurple" parent="AppThemeBase">
<item name="colorPrimary">@color/lightYellowPrimary</item>
<item name="colorPrimaryVariant">@color/lightYellowPrimaryDark</item>
<item name="colorSecondary">@color/lightPurpleSecondary</item>
<item name="colorUnreadHighlight">@color/lightPurpleSecondary</item>
<item name="colorFabBackground">@color/lightPurpleSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightYellowPrimary</item>
<item name="android:textColorLink">@color/lightPurpleSecondary</item>
</style>
<style name="AppThemePurpleYellow" parent="AppThemeBase">
<item name="colorPrimary">@color/lightPurplePrimary</item>
<item name="colorPrimaryVariant">@color/lightPurplePrimaryDark</item>
<item name="colorSecondary">@color/lightYellowSecondary</item>
<item name="colorUnreadHighlight">@color/lightYellowSecondary</item>
<item name="colorFabBackground">@color/lightYellowSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightPurplePrimary</item>
<item name="android:textColorLink">@color/lightYellowSecondary</item>
</style>
<style name="AppThemeRedGreen" parent="AppThemeBase">
<item name="colorPrimary">@color/lightRedPrimary</item>
<item name="colorPrimaryVariant">@color/lightRedPrimaryDark</item>
<item name="colorSecondary">@color/lightGreenSecondary</item>
<item name="colorUnreadHighlight">@color/lightGreenSecondary</item>
<item name="colorFabBackground">@color/lightGreenSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightRedPrimary</item>
<item name="android:textColorLink">@color/lightGreenSecondary</item>
</style>
<style name="AppThemeGreenRed" parent="AppThemeBase">
<item name="colorPrimary">@color/lightGreenPrimary</item>
<item name="colorPrimaryVariant">@color/lightGreenPrimaryDark</item>
<item name="colorSecondary">@color/lightRedSecondary</item>
<item name="colorUnreadHighlight">@color/lightRedSecondary</item>
<item name="colorFabBackground">@color/lightRedSecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/lightGreenPrimary</item>
<item name="android:textColorLink">@color/lightRedSecondary</item>
</style>
<!-- Dark -->
<style name="AppThemeGreySteelBlue" parent="AppThemeBase">
<item name="colorPrimary">@color/greyPrimary</item>
<item name="colorPrimaryVariant">@color/greyPrimaryDark</item>
<item name="colorSecondary">@color/greySecondary</item>
<item name="colorUnreadHighlight">@color/greyAccentDark</item>
<item name="colorEncrypt">@color/colorEncryptDark</item>
<item name="colorFabBackground">@color/greySecondary</item>
<item name="colorInfoForeground">@color/white</item>
<item name="colorInfoBackground">@color/greyPrimary</item>
</style>
<!-- Other -->
<style name="Theme.AppCompat.Translucent" parent="Theme.MaterialComponents.DayNight">
<item name="android:background">@color/transparent</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation</item>
</style>
<!-- Black -->
<style name="AppThemeBlack" parent="AppThemeBlueOrange"/>
<style name="AppThemeBlueOrangeBlack" parent="AppThemeBlueOrange" />
<style name="AppThemeOrangeBlueBlack" parent="AppThemeOrangeBlue" />
<style name="AppThemeYellowPurpleBlack" parent="AppThemeYellowPurple" />
<style name="AppThemePurpleYellowBlack" parent="AppThemePurpleYellow" />
<style name="AppThemeRedGreenBlack" parent="AppThemeRedGreen" />
<style name="AppThemeGreenRedBlack" parent="AppThemeGreenRed" />
<style name="AppThemeBlackAndWhite" parent="AppThemeBlack">
<item name="colorPrimary">@color/blackAndWhitePrimary</item>
<item name="colorPrimary">@color/blackAndWhitePrimaryDark</item>
<item name="colorSecondary">@color/white</item>
<item name="android:textColor">@color/bw_textcolor</item>
<item name="android:textColorPrimary">@color/bw_textcolor</item>
<item name="android:textColorSecondary">@color/bw_textcolor</item>
<item name="android:textColorTertiary">@color/bw_textcolor</item>
<item name="android:textColorPrimaryInverse">@color/bw_textcolor_inverse</item>
<item name="android:textColorSecondaryInverse">@color/bw_textcolor_inverse</item>
<item name="android:textColorTertiaryInverse">@color/bw_textcolor_inverse</item>
<item name="android:textColorLink">@color/lightBluePrimary</item>
<item name="colorWarning">@color/lightColorWarning</item>
<item name="colorRead">@color/white</item>
<item name="colorUnread">@color/white</item>
<item name="colorUnreadHighlight">@color/white</item>
<item name="colorFabForeground">@color/white</item>
<item name="colorFabBackground">@color/blackAndWhitePrimaryLight</item>
</style>
</resources>
Loading…
Cancel
Save