From 9ec3d9048a86b73bb2982a774a8ea088fbb59f80 Mon Sep 17 00:00:00 2001 From: Alinson Xavier Date: Fri, 29 Jul 2016 07:28:44 -0400 Subject: [PATCH] Make Preferences listen for external changes --- .../java/org/isoron/uhabits/utils/Preferences.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/app/src/main/java/org/isoron/uhabits/utils/Preferences.java b/app/src/main/java/org/isoron/uhabits/utils/Preferences.java index 1b0449caa..5e1882ad7 100644 --- a/app/src/main/java/org/isoron/uhabits/utils/Preferences.java +++ b/app/src/main/java/org/isoron/uhabits/utils/Preferences.java @@ -28,6 +28,7 @@ import javax.inject.*; @Singleton public class Preferences + implements SharedPreferences.OnSharedPreferenceChangeListener { private final Context context; @@ -39,7 +40,9 @@ public class Preferences public Preferences(@AppContext Context context) { this.context = context; + prefs = PreferenceManager.getDefaultSharedPreferences(context); + prefs.registerOnSharedPreferenceChangeListener(this); } public Integer getDefaultHabitColor(int fallbackColor) @@ -55,6 +58,14 @@ public class Preferences return defaultScoreInterval; } + @Override + public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, + String key) + { + if(key.equals("pref_checkmark_reverse_order")) + shouldReverseCheckmarks = null; + } + public void setDefaultScoreSpinnerPosition(int position) { prefs.edit().putInt("pref_score_view_interval", position).apply();