Refreshing display options onStart of contact list
Also fixing a couple of typos that snuck into the
previous CL.
Change-Id: Ib755f38f7970ca3489253a0d43eefdd7bbee600d
diff --git a/src/com/android/contacts/preference/ContactsPreferences.java b/src/com/android/contacts/preference/ContactsPreferences.java
index bfe7743..540158d 100644
--- a/src/com/android/contacts/preference/ContactsPreferences.java
+++ b/src/com/android/contacts/preference/ContactsPreferences.java
@@ -118,6 +118,12 @@
if (mListener != null) unregisterChangeListener();
mListener = listener;
+
+ // Reset preferences to "unknown" because they may have changed while the
+ // observer was unregistered.
+ mDisplayOrder = -1;
+ mSortOrder = -1;
+
final ContentResolver contentResolver = mContext.getContentResolver();
contentResolver.registerContentObserver(
Settings.System.getUriFor(
diff --git a/src/com/android/contacts/preference/DisplayOrderPreference.java b/src/com/android/contacts/preference/DisplayOrderPreference.java
index b804660..fea01c8 100644
--- a/src/com/android/contacts/preference/DisplayOrderPreference.java
+++ b/src/com/android/contacts/preference/DisplayOrderPreference.java
@@ -62,7 +62,7 @@
@Override
public CharSequence getSummary() {
- switch (mPreferences.getSortOrder()) {
+ switch (mPreferences.getDisplayOrder()) {
case ContactsContract.Preferences.DISPLAY_ORDER_PRIMARY:
return mContext.getString(R.string.display_options_view_given_name_first);
case ContactsContract.Preferences.DISPLAY_ORDER_ALTERNATIVE:
@@ -74,7 +74,7 @@
@Override
protected boolean persistString(String value) {
int newValue = Integer.parseInt(value);
- if (newValue != mPreferences.getSortOrder()) {
+ if (newValue != mPreferences.getDisplayOrder()) {
mPreferences.setDisplayOrder(newValue);
notifyChanged();
}