Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Niedermann <info@niedermann.it>2020-04-11 18:43:58 +0300
committerStefan Niedermann <info@niedermann.it>2020-04-11 18:43:58 +0300
commitb6eb89b4a6d2c58fb0171c541b9cd8762bf517fd (patch)
treeb95906014ca45f80203269cb4956dd6bca9ed8bb /app/src/main/java/it/niedermann/nextcloud/deck/ui/settings/SettingsFragment.java
parent1f5aa1f953193e1bc1acfe9f4712223329aa7a17 (diff)
#317 Adjust theme for each account
Switches & min contrast ratio for main content area Signed-off-by: Stefan Niedermann <info@niedermann.it>
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.java33
1 files changed, 29 insertions, 4 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 cabdd1021..5ca6aab99 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
@@ -2,24 +2,31 @@ package it.niedermann.nextcloud.deck.ui.settings;
import android.app.Activity;
import android.os.Bundle;
+import android.view.View;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import androidx.preference.ListPreference;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
-import androidx.preference.SwitchPreference;
import it.niedermann.nextcloud.deck.Application;
import it.niedermann.nextcloud.deck.DeckLog;
import it.niedermann.nextcloud.deck.R;
import it.niedermann.nextcloud.deck.persistence.sync.SyncWorker;
+import it.niedermann.nextcloud.deck.ui.branding.Branded;
+import it.niedermann.nextcloud.deck.ui.branding.BrandedSwitchPreference;
-public class SettingsFragment extends PreferenceFragmentCompat {
+public class SettingsFragment extends PreferenceFragmentCompat implements Branded {
+
+ private BrandedSwitchPreference wifiOnlyPref;
+ private BrandedSwitchPreference themePref;
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
setPreferencesFromResource(R.xml.settings, rootKey);
- final SwitchPreference wifiOnlyPref = findPreference(getString(R.string.pref_key_wifi_only));
+ wifiOnlyPref = findPreference(getString(R.string.pref_key_wifi_only));
if (wifiOnlyPref != null) {
wifiOnlyPref.setOnPreferenceChangeListener((Preference preference, Object newValue) -> {
Boolean syncOnWifiOnly = (Boolean) newValue;
@@ -30,7 +37,7 @@ public class SettingsFragment extends PreferenceFragmentCompat {
DeckLog.error("Could not find preference with key: \"" + getString(R.string.pref_key_wifi_only) + "\"");
}
- final SwitchPreference themePref = findPreference(getString(R.string.pref_key_dark_theme));
+ themePref = findPreference(getString(R.string.pref_key_dark_theme));
if (themePref != null) {
themePref.setOnPreferenceChangeListener((Preference preference, Object newValue) -> {
Boolean darkTheme = (Boolean) newValue;
@@ -54,4 +61,22 @@ public class SettingsFragment extends PreferenceFragmentCompat {
DeckLog.error("Could not find preference with key: \"" + getString(R.string.pref_key_background_sync) + "\"");
}
}
+
+ @Override
+ public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+ Application.registerBrandedComponent(requireContext(), this);
+ }
+
+ @Override
+ public void onDestroy() {
+ Application.deregisterBrandedComponent(this);
+ super.onDestroy();
+ }
+
+ @Override
+ public void applyBrand(int mainColor, int textColor) {
+ wifiOnlyPref.applyBrand(mainColor, textColor);
+ themePref.applyBrand(mainColor, textColor);
+ }
}