diff options
author | Stefan Niedermann <info@niedermann.it> | 2020-05-01 22:47:02 +0300 |
---|---|---|
committer | Stefan Niedermann <info@niedermann.it> | 2020-05-01 22:47:02 +0300 |
commit | 22b226fab96615031f6429ccf5dc820b07d0590f (patch) | |
tree | 1ba932bc8785ba929c29a453ac8e09196d4a717f /app/src | |
parent | 9522387646848b32ec943d3f355678ccfdf05924 (diff) |
#762 Branding
Preferences
Diffstat (limited to 'app/src')
4 files changed, 40 insertions, 10 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/PreferencesActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/PreferencesActivity.java index 15681b2f..8e6c0bd5 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/PreferencesActivity.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/PreferencesActivity.java @@ -14,11 +14,13 @@ import it.niedermann.owncloud.notes.databinding.ActivityPreferencesBinding; public class PreferencesActivity extends LockedActivity { + private ActivityPreferencesBinding binding; + @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); - ActivityPreferencesBinding binding = ActivityPreferencesBinding.inflate(getLayoutInflater()); + binding = ActivityPreferencesBinding.inflate(getLayoutInflater()); setContentView(binding.getRoot()); setSupportActionBar(binding.toolbar); @@ -30,5 +32,6 @@ public class PreferencesActivity extends LockedActivity { @Override public void applyBrand(int mainColor, int textColor) { + applyBrandToPrimaryToolbar(mainColor, textColor, binding.toolbar); } } diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java index 27ce4fc7..ec1dda15 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java @@ -1,24 +1,32 @@ package it.niedermann.owncloud.notes.android.fragment; import android.app.Activity; +import android.content.Context; import android.os.Bundle; import android.util.Log; +import androidx.annotation.ColorInt; import androidx.annotation.Nullable; import androidx.preference.ListPreference; import androidx.preference.PreferenceFragmentCompat; -import androidx.preference.SwitchPreference; import it.niedermann.owncloud.notes.R; import it.niedermann.owncloud.notes.android.DarkModeSetting; +import it.niedermann.owncloud.notes.branding.Branded; +import it.niedermann.owncloud.notes.branding.BrandedSwitchPreference; +import it.niedermann.owncloud.notes.branding.BrandingUtil; import it.niedermann.owncloud.notes.persistence.SyncWorker; import it.niedermann.owncloud.notes.util.DeviceCredentialUtil; import it.niedermann.owncloud.notes.util.Notes; -public class PreferencesFragment extends PreferenceFragmentCompat { +public class PreferencesFragment extends PreferenceFragmentCompat implements Branded{ private static final String TAG = PreferencesFragment.class.getSimpleName(); + private BrandedSwitchPreference fontPref; + private BrandedSwitchPreference lockPref; + private BrandedSwitchPreference wifiOnlyPref; + @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -28,7 +36,8 @@ public class PreferencesFragment extends PreferenceFragmentCompat { public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { addPreferencesFromResource(R.xml.preferences); - final SwitchPreference lockPref = findPreference(getString(R.string.pref_key_lock)); + fontPref = findPreference(getString(R.string.pref_key_font)); + lockPref = findPreference(getString(R.string.pref_key_lock)); if (lockPref != null) { if (!DeviceCredentialUtil.areCredentialsAvailable(requireContext())) { lockPref.setVisible(false); @@ -51,7 +60,7 @@ public class PreferencesFragment extends PreferenceFragmentCompat { return true; }); - final SwitchPreference wifiOnlyPref = findPreference(getString(R.string.pref_key_wifi_only)); + wifiOnlyPref = findPreference(getString(R.string.pref_key_wifi_only)); assert wifiOnlyPref != null; wifiOnlyPref.setOnPreferenceChangeListener((preference, newValue) -> { Log.i(TAG, "syncOnWifiOnly: " + newValue); @@ -66,4 +75,23 @@ public class PreferencesFragment extends PreferenceFragmentCompat { return true; }); } + + + @Override + public void onStart() { + super.onStart(); + @Nullable Context context = getContext(); + if (context != null) { + @ColorInt final int mainColor = BrandingUtil.readBrandMainColor(context); + @ColorInt final int textColor = BrandingUtil.readBrandTextColor(context); + applyBrand(mainColor, textColor); + } + } + + @Override + public void applyBrand(int mainColor, int textColor) { + fontPref.applyBrand(mainColor, textColor); + lockPref.applyBrand(mainColor, textColor); + wifiOnlyPref.applyBrand(mainColor, textColor); + } } diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java b/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java index e1fa32ec..2716778b 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/model/ItemAdapter.java @@ -11,7 +11,6 @@ import android.widget.TextView; import androidx.annotation.ColorInt; import androidx.annotation.NonNull; -import androidx.core.graphics.drawable.DrawableCompat; import androidx.recyclerview.widget.RecyclerView; import java.util.ArrayList; @@ -106,7 +105,7 @@ public class ItemAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> i nvHolder.noteTitle.setText(Html.fromHtml(note.getTitle())); nvHolder.noteCategory.setVisibility(showCategory && !note.getCategory().isEmpty() ? View.VISIBLE : View.GONE); nvHolder.noteCategory.setText(Html.fromHtml(note.getCategory())); - DrawableCompat.setTint(nvHolder.noteCategory.getBackground(), mainColor); + // TODO set category border color from mainColor nvHolder.noteExcerpt.setText(Html.fromHtml(note.getExcerpt())); nvHolder.noteStatus.setVisibility(DBStatus.VOID.equals(note.getStatus()) ? View.INVISIBLE : View.VISIBLE); nvHolder.noteFavorite.setImageResource(note.isFavorite() ? R.drawable.ic_star_yellow_24dp : R.drawable.ic_star_grey_ccc_24dp); diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index c0d1d5ac..4525725f 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> - <SwitchPreference + <it.niedermann.owncloud.notes.branding.BrandedSwitchPreference android:defaultValue="@string/pref_value_lock" android:icon="@drawable/ic_lock_grey600_24dp" android:key="@string/pref_key_lock" @@ -29,7 +29,7 @@ android:layout="@layout/item_pref" android:title="@string/settings_theme_title" /> - <SwitchPreference + <it.niedermann.owncloud.notes.branding.BrandedSwitchPreference android:defaultValue="@string/pref_value_font_normal" android:icon="@drawable/ic_text_format_grey600_24dp" android:key="@string/pref_key_font" @@ -46,7 +46,7 @@ android:summary="%s" android:title="@string/settings_font_size" /> - <SwitchPreference + <it.niedermann.owncloud.notes.branding.BrandedSwitchPreference android:defaultValue="@string/pref_value_wifi_and_mobile" android:icon="@drawable/ic_network_wifi_grey600_24dp" android:key="@string/pref_key_wifi_only" |