summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Garnes <matt@cyngn.com>2015-03-06 11:31:45 -0800
committerGerrit Code Review <gerrit@cyanogenmod.org>2015-03-10 19:03:12 +0000
commita680fc779a454729efd0a2fc8982f52117a79994 (patch)
tree4fe258508c4b5b4ef3850fd72f4ccbd2fa1569e8
parent898ee9c8298e4a9a66d942ca33d068840fb2dc92 (diff)
downloadandroid_packages_apps_ContactsCommon-a680fc779a454729efd0a2fc8982f52117a79994.tar.gz
android_packages_apps_ContactsCommon-a680fc779a454729efd0a2fc8982f52117a79994.tar.bz2
android_packages_apps_ContactsCommon-a680fc779a454729efd0a2fc8982f52117a79994.zip
Only reload contacts if relevant SharedPreferences change.
In ContactEntryListFragment, we listen for any changes to SharedPreferences. However, not all SharedPreferences should trigger a data reload. last_updated_millis will be written if the smart dial tables in the dialer DB were updated. mPreferencesChangeListener would reload all contacts data. This shared preference does not change the data for contacts, so we should not reload them. On slower devices, this will visibly cause the ListView to flash between the empty view and populated listitems as it reloads twice when the activity resumes. Only reload data when relevant SharedPreferences change. Change-Id: Id2a607fdaf5715b69738c76422ef08d76e6ffafe
-rwxr-xr-xsrc/com/android/contacts/common/list/ContactEntryListFragment.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/com/android/contacts/common/list/ContactEntryListFragment.java b/src/com/android/contacts/common/list/ContactEntryListFragment.java
index 4af18305..1819c0c8 100755
--- a/src/com/android/contacts/common/list/ContactEntryListFragment.java
+++ b/src/com/android/contacts/common/list/ContactEntryListFragment.java
@@ -916,8 +916,9 @@ public abstract class ContactEntryListFragment<T extends ContactEntryListAdapter
new ContactsPreferences.ChangeListener() {
@Override
public void onChange() {
- loadPreferences();
- reloadData();
+ if(loadPreferences()) {
+ reloadData();
+ }
}
};