From 9f8dff8c5d0be271394a04009dd70ee3c15853cd Mon Sep 17 00:00:00 2001 From: Anthony Restaino Date: Wed, 13 May 2015 10:35:32 -0400 Subject: [PATCH] Added an AMOLED Black theme, changed from tabs to spaces for some files --- .../lightning/activity/BrowserActivity.java | 3 +- .../activity/DisplaySettingsActivity.java | 343 ++++++++++-------- .../lightning/activity/ThemableActivity.java | 60 +-- .../activity/ThemableSettingsActivity.java | 62 ++-- .../lightning/object/SearchAdapter.java | 1 + .../preference/PreferenceManager.java | 10 +- .../res/drawable/toolbar_elevate_black.xml | 19 + app/src/main/res/layout/display_settings.xml | 64 ++-- app/src/main/res/values-hu/strings.xml | 2 +- app/src/main/res/values-pt/strings.xml | 2 +- app/src/main/res/values-sr/strings.xml | 2 +- app/src/main/res/values-v21/styles.xml | 47 +++ app/src/main/res/values/arrays.xml | 6 + app/src/main/res/values/strings.xml | 5 +- app/src/main/res/values/styles.xml | 44 +++ 15 files changed, 424 insertions(+), 246 deletions(-) create mode 100644 app/src/main/res/drawable/toolbar_elevate_black.xml diff --git a/app/src/main/java/acr/browser/lightning/activity/BrowserActivity.java b/app/src/main/java/acr/browser/lightning/activity/BrowserActivity.java index bde3d06..7092f7e 100644 --- a/app/src/main/java/acr/browser/lightning/activity/BrowserActivity.java +++ b/app/src/main/java/acr/browser/lightning/activity/BrowserActivity.java @@ -162,7 +162,8 @@ public class BrowserActivity extends ThemableActivity implements BrowserControll ActionBar actionBar = getSupportActionBar(); mPreferences = PreferenceManager.getInstance(); - mDarkTheme = mPreferences.getUseDarkTheme() || isIncognito(); + //TODO make sure dark theme flag gets set correctly + mDarkTheme = mPreferences.getUseTheme() != 0 || isIncognito(); mActivity = this; mWebViews.clear(); diff --git a/app/src/main/java/acr/browser/lightning/activity/DisplaySettingsActivity.java b/app/src/main/java/acr/browser/lightning/activity/DisplaySettingsActivity.java index 712e8c3..f97d771 100644 --- a/app/src/main/java/acr/browser/lightning/activity/DisplaySettingsActivity.java +++ b/app/src/main/java/acr/browser/lightning/activity/DisplaySettingsActivity.java @@ -14,162 +14,201 @@ import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.RelativeLayout; +import android.widget.TextView; import acr.browser.lightning.preference.PreferenceManager; import acr.browser.lightning.R; public class DisplaySettingsActivity extends ThemableSettingsActivity { - // mPreferences variables - private PreferenceManager mPreferences; - private CheckBox cbHideStatusBar, cbFullScreen, cbWideViewPort, cbOverView, cbTextReflow, - cbDarkTheme; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.display_settings); - - Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); - setSupportActionBar(toolbar); - getSupportActionBar().setDisplayHomeAsUpEnabled(true); - - mPreferences = PreferenceManager.getInstance(); - initialize(); - } - - @Override - public boolean onOptionsItemSelected(MenuItem item) { - finish(); - return true; - } - - private void initialize() { - - RelativeLayout rHideStatusBar, rFullScreen, rWideViewPort, rOverView, rTextReflow, rTextSize, rDarkTheme; - LayoutClickListener clickListener = new LayoutClickListener(); - CheckBoxToggleListener toggleListener = new CheckBoxToggleListener(); - - rHideStatusBar = (RelativeLayout) findViewById(R.id.rHideStatusBar); - rFullScreen = (RelativeLayout) findViewById(R.id.rFullScreen); - rWideViewPort = (RelativeLayout) findViewById(R.id.rWideViewPort); - rOverView = (RelativeLayout) findViewById(R.id.rOverView); - rTextReflow = (RelativeLayout) findViewById(R.id.rTextReflow); - rTextSize = (RelativeLayout) findViewById(R.id.rTextSize); - rDarkTheme = (RelativeLayout) findViewById(R.id.rDarkTheme); - - rHideStatusBar.setOnClickListener(clickListener); - rFullScreen.setOnClickListener(clickListener); - rWideViewPort.setOnClickListener(clickListener); - rOverView.setOnClickListener(clickListener); - rTextReflow.setOnClickListener(clickListener); - rTextSize.setOnClickListener(clickListener); - rDarkTheme.setOnClickListener(clickListener); - - cbHideStatusBar = (CheckBox) findViewById(R.id.cbHideStatusBar); - cbFullScreen = (CheckBox) findViewById(R.id.cbFullScreen); - cbWideViewPort = (CheckBox) findViewById(R.id.cbWideViewPort); - cbOverView = (CheckBox) findViewById(R.id.cbOverView); - cbTextReflow = (CheckBox) findViewById(R.id.cbTextReflow); - cbDarkTheme = (CheckBox) findViewById(R.id.cbDarkTheme); - - cbHideStatusBar.setChecked(mPreferences.getHideStatusBarEnabled()); - cbFullScreen.setChecked(mPreferences.getFullScreenEnabled()); - cbWideViewPort.setChecked(mPreferences.getUseWideViewportEnabled()); - cbOverView.setChecked(mPreferences.getOverviewModeEnabled()); - cbTextReflow.setChecked(mPreferences.getTextReflowEnabled()); - cbDarkTheme.setChecked(mPreferences.getUseDarkTheme()); - - cbHideStatusBar.setOnCheckedChangeListener(toggleListener); - cbFullScreen.setOnCheckedChangeListener(toggleListener); - cbWideViewPort.setOnCheckedChangeListener(toggleListener); - cbOverView.setOnCheckedChangeListener(toggleListener); - cbTextReflow.setOnCheckedChangeListener(toggleListener); - cbDarkTheme.setOnCheckedChangeListener(toggleListener); - } - - private class LayoutClickListener implements OnClickListener { - - @Override - public void onClick(View v) { - switch (v.getId()) { - case R.id.rHideStatusBar: - cbHideStatusBar.setChecked(!cbHideStatusBar.isChecked()); - break; - case R.id.rFullScreen: - cbFullScreen.setChecked(!cbFullScreen.isChecked()); - break; - case R.id.rWideViewPort: - cbWideViewPort.setChecked(!cbWideViewPort.isChecked()); - break; - case R.id.rOverView: - cbOverView.setChecked(!cbOverView.isChecked()); - break; - case R.id.rTextReflow: - cbTextReflow.setChecked(!cbTextReflow.isChecked()); - break; - case R.id.rTextSize: - textSizePicker(); - break; - case R.id.rDarkTheme: - cbDarkTheme.setChecked(!cbDarkTheme.isChecked()); - break; - } - } - - } - - private class CheckBoxToggleListener implements OnCheckedChangeListener { - - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - switch (buttonView.getId()) { - case R.id.cbHideStatusBar: - mPreferences.setHideStatusBarEnabled(isChecked); - break; - case R.id.cbFullScreen: - mPreferences.setFullScreenEnabled(isChecked); - break; - case R.id.cbWideViewPort: - mPreferences.setUseWideViewportEnabled(isChecked); - break; - case R.id.cbOverView: - mPreferences.setOverviewModeEnabled(isChecked); - break; - case R.id.cbTextReflow: - mPreferences.setTextReflowEnabled(isChecked); - break; - case R.id.cbDarkTheme: - mPreferences.setUseDarkTheme(isChecked); - restart(); - break; - } - } - - } - - private void textSizePicker() { - AlertDialog.Builder picker = new AlertDialog.Builder(DisplaySettingsActivity.this); - picker.setTitle(getResources().getString(R.string.title_text_size)); - - int n = mPreferences.getTextSize(); - - picker.setSingleChoiceItems(R.array.text_size, n - 1, - new DialogInterface.OnClickListener() { - - @Override - public void onClick(DialogInterface dialog, int which) { - mPreferences.setTextSize(which + 1); - } - }); - picker.setNeutralButton(getResources().getString(R.string.action_ok), - new DialogInterface.OnClickListener() { - - @Override - public void onClick(DialogInterface dialog, int which) { - - } - }); - picker.show(); - } + // mPreferences variables + private PreferenceManager mPreferences; + private CheckBox cbHideStatusBar, cbFullScreen, cbWideViewPort, cbOverView, cbTextReflow; + private String[] mThemeOptions; + private TextView mThemeText; + private int mCurrentTheme; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.display_settings); + + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); + setSupportActionBar(toolbar); + getSupportActionBar().setDisplayHomeAsUpEnabled(true); + + mPreferences = PreferenceManager.getInstance(); + mThemeOptions = this.getResources().getStringArray(R.array.themes); + initialize(); + } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + finish(); + return true; + } + + private void initialize() { + + RelativeLayout rHideStatusBar, rFullScreen, rWideViewPort, rOverView, rTextReflow, rTextSize, rDarkTheme; + LayoutClickListener clickListener = new LayoutClickListener(); + CheckBoxToggleListener toggleListener = new CheckBoxToggleListener(); + + rHideStatusBar = (RelativeLayout) findViewById(R.id.rHideStatusBar); + rFullScreen = (RelativeLayout) findViewById(R.id.rFullScreen); + rWideViewPort = (RelativeLayout) findViewById(R.id.rWideViewPort); + rOverView = (RelativeLayout) findViewById(R.id.rOverView); + rTextReflow = (RelativeLayout) findViewById(R.id.rTextReflow); + rTextSize = (RelativeLayout) findViewById(R.id.rTextSize); + rDarkTheme = (RelativeLayout) findViewById(R.id.rTheme); + + rHideStatusBar.setOnClickListener(clickListener); + rFullScreen.setOnClickListener(clickListener); + rWideViewPort.setOnClickListener(clickListener); + rOverView.setOnClickListener(clickListener); + rTextReflow.setOnClickListener(clickListener); + rTextSize.setOnClickListener(clickListener); + rDarkTheme.setOnClickListener(clickListener); + + mThemeText = (TextView) findViewById(R.id.textViewTheme); + + mCurrentTheme = mPreferences.getUseTheme(); + mThemeText.setText(mThemeOptions[mPreferences.getUseTheme()]); + + cbHideStatusBar = (CheckBox) findViewById(R.id.cbHideStatusBar); + cbFullScreen = (CheckBox) findViewById(R.id.cbFullScreen); + cbWideViewPort = (CheckBox) findViewById(R.id.cbWideViewPort); + cbOverView = (CheckBox) findViewById(R.id.cbOverView); + cbTextReflow = (CheckBox) findViewById(R.id.cbTextReflow); + + cbHideStatusBar.setChecked(mPreferences.getHideStatusBarEnabled()); + cbFullScreen.setChecked(mPreferences.getFullScreenEnabled()); + cbWideViewPort.setChecked(mPreferences.getUseWideViewportEnabled()); + cbOverView.setChecked(mPreferences.getOverviewModeEnabled()); + cbTextReflow.setChecked(mPreferences.getTextReflowEnabled()); + + cbHideStatusBar.setOnCheckedChangeListener(toggleListener); + cbFullScreen.setOnCheckedChangeListener(toggleListener); + cbWideViewPort.setOnCheckedChangeListener(toggleListener); + cbOverView.setOnCheckedChangeListener(toggleListener); + cbTextReflow.setOnCheckedChangeListener(toggleListener); + } + + private class LayoutClickListener implements OnClickListener { + + @Override + public void onClick(View v) { + switch (v.getId()) { + case R.id.rHideStatusBar: + cbHideStatusBar.setChecked(!cbHideStatusBar.isChecked()); + break; + case R.id.rFullScreen: + cbFullScreen.setChecked(!cbFullScreen.isChecked()); + break; + case R.id.rWideViewPort: + cbWideViewPort.setChecked(!cbWideViewPort.isChecked()); + break; + case R.id.rOverView: + cbOverView.setChecked(!cbOverView.isChecked()); + break; + case R.id.rTextReflow: + cbTextReflow.setChecked(!cbTextReflow.isChecked()); + break; + case R.id.rTextSize: + textSizePicker(); + break; + case R.id.rTheme: + themePicker(); + break; + } + } + + } + + private class CheckBoxToggleListener implements OnCheckedChangeListener { + + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + switch (buttonView.getId()) { + case R.id.cbHideStatusBar: + mPreferences.setHideStatusBarEnabled(isChecked); + break; + case R.id.cbFullScreen: + mPreferences.setFullScreenEnabled(isChecked); + break; + case R.id.cbWideViewPort: + mPreferences.setUseWideViewportEnabled(isChecked); + break; + case R.id.cbOverView: + mPreferences.setOverviewModeEnabled(isChecked); + break; + case R.id.cbTextReflow: + mPreferences.setTextReflowEnabled(isChecked); + break; + } + } + + } + + private void textSizePicker() { + AlertDialog.Builder picker = new AlertDialog.Builder(DisplaySettingsActivity.this); + picker.setTitle(getResources().getString(R.string.title_text_size)); + + int n = mPreferences.getTextSize(); + + picker.setSingleChoiceItems(R.array.text_size, n - 1, + new DialogInterface.OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + mPreferences.setTextSize(which + 1); + } + }); + picker.setNeutralButton(getResources().getString(R.string.action_ok), + new DialogInterface.OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + + } + }); + picker.show(); + } + + private void themePicker() { + + AlertDialog.Builder picker = new AlertDialog.Builder(DisplaySettingsActivity.this); + picker.setTitle(getResources().getString(R.string.url_contents)); + + int n = mPreferences.getUseTheme(); + picker.setSingleChoiceItems(mThemeOptions, n, new DialogInterface.OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + mPreferences.setUseTheme(which); + if (which < mThemeOptions.length) { + mThemeText.setText(mThemeOptions[which]); + } + } + }); + picker.setNeutralButton(getResources().getString(R.string.action_ok), + new DialogInterface.OnClickListener() { + + @Override + public void onClick(DialogInterface dialog, int which) { + if (mCurrentTheme != mPreferences.getUseTheme()) { + restart(); + } + } + }); + picker.setOnCancelListener(new DialogInterface.OnCancelListener() { + @Override + public void onCancel(DialogInterface dialog) { + if (mCurrentTheme != mPreferences.getUseTheme()) { + restart(); + } + } + }); + picker.show(); + } } diff --git a/app/src/main/java/acr/browser/lightning/activity/ThemableActivity.java b/app/src/main/java/acr/browser/lightning/activity/ThemableActivity.java index 3b80b75..948cc83 100644 --- a/app/src/main/java/acr/browser/lightning/activity/ThemableActivity.java +++ b/app/src/main/java/acr/browser/lightning/activity/ThemableActivity.java @@ -9,33 +9,35 @@ import acr.browser.lightning.preference.PreferenceManager; public abstract class ThemableActivity extends AppCompatActivity { - private boolean mDark; - - @Override - protected void onCreate(Bundle savedInstanceState) { - mDark = PreferenceManager.getInstance().getUseDarkTheme(); - - // set the theme - if (mDark) { - setTheme(R.style.Theme_DarkTheme); - } - super.onCreate(savedInstanceState); - } - - @Override - protected void onResume() { - super.onResume(); - if (PreferenceManager.getInstance().getUseDarkTheme() != mDark) { - restart(); - } - } - - protected void restart() { - final Bundle outState = new Bundle(); - onSaveInstanceState(outState); - final Intent intent = new Intent(this, getClass()); - finish(); - overridePendingTransition(0, 0); - startActivity(intent); - } + private int mTheme; + + @Override + protected void onCreate(Bundle savedInstanceState) { + mTheme = PreferenceManager.getInstance().getUseTheme(); + + // set the theme + if (mTheme == 1) { + setTheme(R.style.Theme_DarkTheme); + } else if (mTheme == 2) { + setTheme(R.style.Theme_BlackTheme); + } + super.onCreate(savedInstanceState); + } + + @Override + protected void onResume() { + super.onResume(); + if (PreferenceManager.getInstance().getUseTheme() != mTheme) { + restart(); + } + } + + protected void restart() { + final Bundle outState = new Bundle(); + onSaveInstanceState(outState); + final Intent intent = new Intent(this, getClass()); + finish(); + overridePendingTransition(0, 0); + startActivity(intent); + } } diff --git a/app/src/main/java/acr/browser/lightning/activity/ThemableSettingsActivity.java b/app/src/main/java/acr/browser/lightning/activity/ThemableSettingsActivity.java index 1955e59..e43e1e2 100644 --- a/app/src/main/java/acr/browser/lightning/activity/ThemableSettingsActivity.java +++ b/app/src/main/java/acr/browser/lightning/activity/ThemableSettingsActivity.java @@ -1,6 +1,7 @@ package acr.browser.lightning.activity; import android.content.Intent; +import android.graphics.drawable.ColorDrawable; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; @@ -9,33 +10,36 @@ import acr.browser.lightning.preference.PreferenceManager; public abstract class ThemableSettingsActivity extends AppCompatActivity { - private boolean mDark; - - @Override - protected void onCreate(Bundle savedInstanceState) { - mDark = PreferenceManager.getInstance().getUseDarkTheme(); - - // set the theme - if (mDark) { - setTheme(R.style.Theme_SettingsTheme_Dark); - } - super.onCreate(savedInstanceState); - } - - @Override - protected void onResume() { - super.onResume(); - if (PreferenceManager.getInstance().getUseDarkTheme() != mDark) { - restart(); - } - } - - protected void restart() { - final Bundle outState = new Bundle(); - onSaveInstanceState(outState); - final Intent intent = new Intent(this, getClass()); - finish(); - overridePendingTransition(0, 0); - startActivity(intent); - } + private int mTheme; + + @Override + protected void onCreate(Bundle savedInstanceState) { + mTheme = PreferenceManager.getInstance().getUseTheme(); + + // set the theme + if (mTheme == 1) { + setTheme(R.style.Theme_SettingsTheme_Dark); + } else if (mTheme == 2) { + setTheme(R.style.Theme_SettingsTheme_Black); + this.getWindow().setBackgroundDrawable(new ColorDrawable(this.getResources().getColor(R.color.black))); + } + super.onCreate(savedInstanceState); + } + + @Override + protected void onResume() { + super.onResume(); + if (PreferenceManager.getInstance().getUseTheme() != mTheme) { + restart(); + } + } + + protected void restart() { + final Bundle outState = new Bundle(); + onSaveInstanceState(outState); + final Intent intent = new Intent(this, getClass()); + finish(); + overridePendingTransition(0, 0); + startActivity(intent); + } } diff --git a/app/src/main/java/acr/browser/lightning/object/SearchAdapter.java b/app/src/main/java/acr/browser/lightning/object/SearchAdapter.java index 3cdf447..58d49cc 100644 --- a/app/src/main/java/acr/browser/lightning/object/SearchAdapter.java +++ b/app/src/main/java/acr/browser/lightning/object/SearchAdapter.java @@ -116,6 +116,7 @@ public class SearchAdapter extends BaseAdapter implements Filterable { if (!mUseGoogle && mSuggestions != null) { mSuggestions.clear(); } + mDatabaseHandler = HistoryDatabase.getInstance(mContext.getApplicationContext()); } public void refreshBookmarks() { diff --git a/app/src/main/java/acr/browser/lightning/preference/PreferenceManager.java b/app/src/main/java/acr/browser/lightning/preference/PreferenceManager.java index 275e93d..48c4f4d 100644 --- a/app/src/main/java/acr/browser/lightning/preference/PreferenceManager.java +++ b/app/src/main/java/acr/browser/lightning/preference/PreferenceManager.java @@ -45,7 +45,7 @@ public class PreferenceManager { public static final String URL_BOX_CONTENTS = "urlContent"; public static final String INVERT_COLORS = "invertColors"; public static final String READING_TEXT_SIZE = "readingTextSize"; - public static final String DARK_THEME = "darkTheme"; + public static final String THEME = "Theme"; public static final String DEFAULT_BOOKMARKS = "defaultBookmarks"; public static final String USE_PROXY = "useProxy"; @@ -218,8 +218,8 @@ public class PreferenceManager { return mPrefs.getInt(Name.URL_BOX_CONTENTS, 0); } - public boolean getUseDarkTheme() { - return mPrefs.getBoolean(Name.DARK_THEME, false); + public int getUseTheme() { + return mPrefs.getInt(Name.THEME, 0); } public boolean getUseProxy() { @@ -390,8 +390,8 @@ public class PreferenceManager { putInt(Name.URL_BOX_CONTENTS, choice); } - public void setUseDarkTheme(boolean use) { - putBoolean(Name.DARK_THEME, use); + public void setUseTheme(int theme) { + putInt(Name.THEME, theme); } public void setUseProxy(boolean enable) { diff --git a/app/src/main/res/drawable/toolbar_elevate_black.xml b/app/src/main/res/drawable/toolbar_elevate_black.xml new file mode 100644 index 0000000..fba9f9e --- /dev/null +++ b/app/src/main/res/drawable/toolbar_elevate_black.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/display_settings.xml b/app/src/main/res/layout/display_settings.xml index 6816c7e..c333bee 100644 --- a/app/src/main/res/layout/display_settings.xml +++ b/app/src/main/res/layout/display_settings.xml @@ -2,19 +2,19 @@ + android:orientation="vertical"> + android:layout_height="match_parent"> + android:orientation="vertical"> + android:paddingTop="10dp"> + android:paddingTop="10dp"> - + + android:paddingTop="10dp"> - + android:orientation="vertical"> + + + + + - - + + android:paddingTop="10dp"> + android:orientation="vertical"> + android:paddingTop="10dp"> + android:orientation="vertical"> + android:paddingTop="10dp"> + android:paddingTop="10dp"> Cím Negatív szín - Sötét téma használata + Sötét téma A téma megváltoztatásának érvénybelépéséhez indítsa újra a böngészőt. Lapok diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml index e197468..ec44652 100644 --- a/app/src/main/res/values-pt/strings.xml +++ b/app/src/main/res/values-pt/strings.xml @@ -211,7 +211,7 @@ Título Inverter cores - Utilizar tema escuro + Tema escuro Esta opção será aplicada depois de reiniciar a aplicação. Separadores diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index 1dd1f07..9f6db77 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -208,7 +208,7 @@ Наслов Обрнута боја - Тамна тема Промена теме ће бити извршена по поновном покретању прегледача. Језичци + Тамна тема diff --git a/app/src/main/res/values-v21/styles.xml b/app/src/main/res/values-v21/styles.xml index 0e5a0b3..83c20f3 100644 --- a/app/src/main/res/values-v21/styles.xml +++ b/app/src/main/res/values-v21/styles.xml @@ -33,6 +33,22 @@ @color/divider_dark + + + + \ No newline at end of file diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 47babc9..b7eee71 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -26,4 +26,10 @@ @string/size_small @string/size_smallest + + + @string/light_theme + @string/dark_theme + @string/black_theme + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b3d9cf9..fb3b57c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -211,7 +211,10 @@ Title Invert color - Use Dark Theme + Dark Theme The theme change will take effect after you restart the browser. Tabs + App Theme + Light Theme + Black Theme (AMOLED) diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 2273120..272cd3b 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -33,6 +33,22 @@ @color/divider_dark + + + +