diff --git a/app/src/main/java/com/fox2code/mmm/MainApplication.java b/app/src/main/java/com/fox2code/mmm/MainApplication.java
index 6a31b50..23d80f5 100644
--- a/app/src/main/java/com/fox2code/mmm/MainApplication.java
+++ b/app/src/main/java/com/fox2code/mmm/MainApplication.java
@@ -235,17 +235,24 @@ public class MainApplication extends CompatApplication {
public void updateTheme() {
@StyleRes int themeResId;
String theme;
+ boolean monet = isMonetEnabled();
switch (theme = getSharedPreferences().getString("pref_theme", "system")) {
default:
Log.w("MainApplication", "Unknown theme id: " + theme);
case "system":
- themeResId = R.style.Theme_MagiskModuleManager;
+ themeResId = monet ?
+ R.style.Theme_MagiskModuleManager_Monet :
+ R.style.Theme_MagiskModuleManager;
break;
case "dark":
- themeResId = R.style.Theme_MagiskModuleManager_Dark;
+ themeResId = monet ?
+ R.style.Theme_MagiskModuleManager_Monet_Dark :
+ R.style.Theme_MagiskModuleManager_Dark;
break;
case "light":
- themeResId = R.style.Theme_MagiskModuleManager_Light;
+ themeResId = monet ?
+ R.style.Theme_MagiskModuleManager_Monet_Light :
+ R.style.Theme_MagiskModuleManager_Light;
break;
}
this.setManagerThemeResId(themeResId);
@@ -276,11 +283,11 @@ public class MainApplication extends CompatApplication {
public void onCreate() {
if (INSTANCE == null) INSTANCE = this;
super.onCreate();
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S && isMonetEnabled()) {
+ /*if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
DynamicColors.applyToActivitiesIfAvailable(this,
new DynamicColorsOptions.Builder().setPrecondition(
(activity, theme) -> isMonetEnabled()).build());
- }
+ }*/
SharedPreferences sharedPreferences = MainApplication.getSharedPreferences();
// We are only one process so it's ok to do this
SharedPreferences bootPrefs = MainApplication.bootSharedPreferences =
diff --git a/app/src/main/java/com/fox2code/mmm/settings/SettingsActivity.java b/app/src/main/java/com/fox2code/mmm/settings/SettingsActivity.java
index 4e460ff..b2954b1 100644
--- a/app/src/main/java/com/fox2code/mmm/settings/SettingsActivity.java
+++ b/app/src/main/java/com/fox2code/mmm/settings/SettingsActivity.java
@@ -108,6 +108,14 @@ public class SettingsActivity extends CompatActivity implements LanguageActivity
disableMonet.setSummary(R.string.require_android_12);
disableMonet.setEnabled(false);
}
+ disableMonet.setOnPreferenceClickListener(preference -> {
+ UiThreadHandler.handler.postDelayed(() -> {
+ MainApplication.getINSTANCE().updateTheme();
+ ((CompatActivity) this.requireActivity()).setThemeRecreate(
+ MainApplication.getINSTANCE().getManagerThemeResId());
+ }, 1);
+ return true;
+ });
findPreference("pref_dns_over_https").setOnPreferenceChangeListener((p, v) -> {
Http.setDoh((Boolean) v);
diff --git a/app/src/main/res/values-night-v31/themes.xml b/app/src/main/res/values-night-v31/themes.xml
new file mode 100644
index 0000000..55fbc37
--- /dev/null
+++ b/app/src/main/res/values-night-v31/themes.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values-v31/themes.xml b/app/src/main/res/values-v31/themes.xml
index 99a50b5..b70691e 100644
--- a/app/src/main/res/values-v31/themes.xml
+++ b/app/src/main/res/values-v31/themes.xml
@@ -1,11 +1,10 @@
-
+
-