diff options
author | Stefan Niedermann <info@niedermann.it> | 2020-04-17 21:29:00 +0300 |
---|---|---|
committer | Stefan Niedermann <info@niedermann.it> | 2020-04-17 21:29:00 +0300 |
commit | 9ce1517b6f5a031ff93137f12fee18515c126eab (patch) | |
tree | 05e748a9df66d53361a14776c3c3de0ec1040d21 /app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java | |
parent | bfb2e2f60d7362c7e7e4cedb0889292aa48331a4 (diff) |
#317 Adjust theme for each account
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java')
-rw-r--r-- | app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java index a7602fcc9..f531abbe1 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java @@ -21,15 +21,17 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Brande private BrandedSwitchPreference wifiOnlyPref; private BrandedSwitchPreference themePref; + private BrandedSwitchPreference brandingPref; @Override public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { setPreferencesFromResource(R.xml.settings, rootKey); wifiOnlyPref = findPreference(getString(R.string.pref_key_wifi_only)); + if (wifiOnlyPref != null) { wifiOnlyPref.setOnPreferenceChangeListener((Preference preference, Object newValue) -> { - Boolean syncOnWifiOnly = (Boolean) newValue; + final Boolean syncOnWifiOnly = (Boolean) newValue; DeckLog.log("syncOnWifiOnly: " + syncOnWifiOnly); return true; }); @@ -40,7 +42,7 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Brande themePref = findPreference(getString(R.string.pref_key_dark_theme)); if (themePref != null) { themePref.setOnPreferenceChangeListener((Preference preference, Object newValue) -> { - Boolean darkTheme = (Boolean) newValue; + final Boolean darkTheme = (Boolean) newValue; DeckLog.log("darkTheme: " + darkTheme); Application.setAppTheme(darkTheme); requireActivity().setResult(Activity.RESULT_OK); @@ -51,6 +53,19 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Brande DeckLog.error("Could not find preference with key: \"" + getString(R.string.pref_key_dark_theme) + "\""); } + brandingPref = findPreference(getString(R.string.pref_key_branding)); + if (brandingPref != null) { + brandingPref.setOnPreferenceChangeListener((Preference preference, Object newValue) -> { + final Boolean branding = (Boolean) newValue; + DeckLog.log("branding: " + branding); + requireActivity().setResult(Activity.RESULT_OK); + requireActivity().recreate(); + return true; + }); + } else { + DeckLog.error("Could not find preference with key: \"" + getString(R.string.pref_key_dark_theme) + "\""); + } + final ListPreference backgroundSyncPref = findPreference(getString(R.string.pref_key_background_sync)); if (backgroundSyncPref != null) { backgroundSyncPref.setOnPreferenceChangeListener((Preference preference, Object newValue) -> { @@ -74,19 +89,9 @@ public class SettingsFragment extends PreferenceFragmentCompat implements Brande } @Override - public void onStop() { - @Nullable Context context = getContext(); - if (context != null) { - @ColorInt final int mainColor = Application.readBrandMainColor(context); - @ColorInt final int textColor = Application.readBrandTextColor(context); - applyBrand(mainColor, textColor); - } - super.onStop(); - } - - @Override public void applyBrand(int mainColor, int textColor) { wifiOnlyPref.applyBrand(mainColor, textColor); themePref.applyBrand(mainColor, textColor); + brandingPref.applyBrand(mainColor, textColor); } } |