summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/Settings.java
diff options
context:
space:
mode:
authorAmith Yamasani <yamasani@google.com>2012-06-06 20:23:08 -0700
committerAmith Yamasani <yamasani@google.com>2012-06-06 20:55:40 -0700
commit86708a8a6da3d2da4547750ce67a89744a2878a1 (patch)
tree119df8c219af6692a73b134717cb4bd32cb4dc0f /src/com/android/settings/Settings.java
parent6a5e0252ce383654e304ffd0bca09ced0cadc0a3 (diff)
downloadpackages_apps_settings-86708a8a6da3d2da4547750ce67a89744a2878a1.zip
packages_apps_settings-86708a8a6da3d2da4547750ce67a89744a2878a1.tar.gz
packages_apps_settings-86708a8a6da3d2da4547750ce67a89744a2878a1.tar.bz2
Add back a SYNC_SETTINGS screen
Revive the old Accounts&Sync screen as a dialog with the auto-sync checkbox and a list of accounts. This will be launched when Apps request a SYNC_SETTINGS page for controlling account and master sync. Auto-sync data checkbox will also continue to exist in Data Usage. Minor fixes to account list and account update monitoring. Bug: 6614013 Bug: 6622995 Bug: 6610247 Change-Id: I35c0919a29c6bc7e5edf64f2734a3ef4f5ae5e7a
Diffstat (limited to 'src/com/android/settings/Settings.java')
-rw-r--r--src/com/android/settings/Settings.java13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index 353bc3a..50019a3 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -112,6 +112,7 @@ public class Settings extends PreferenceActivity
private AuthenticatorHelper mAuthenticatorHelper;
private Header mLastHeader;
+ private boolean mListeningToAccountUpdates;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -187,7 +188,6 @@ public class Settings extends PreferenceActivity
ListAdapter listAdapter = getListAdapter();
if (listAdapter instanceof HeaderAdapter) {
((HeaderAdapter) listAdapter).resume();
- AccountManager.get(this).addOnAccountsUpdatedListener(this, null, true);
}
}
@@ -198,6 +198,13 @@ public class Settings extends PreferenceActivity
ListAdapter listAdapter = getListAdapter();
if (listAdapter instanceof HeaderAdapter) {
((HeaderAdapter) listAdapter).pause();
+ }
+ }
+
+ @Override
+ public void onDestroy() {
+ super.onDestroy();
+ if (mListeningToAccountUpdates) {
AccountManager.get(this).removeOnAccountsUpdatedListener(this);
}
}
@@ -462,6 +469,10 @@ public class Settings extends PreferenceActivity
for (Header header : accountHeaders) {
target.add(headerIndex++, header);
}
+ if (!mListeningToAccountUpdates) {
+ AccountManager.get(this).addOnAccountsUpdatedListener(this, null, true);
+ mListeningToAccountUpdates = true;
+ }
return headerIndex;
}