diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2018-09-21 17:18:39 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-09-21 17:18:39 +0000 |
commit | 6687ba0cc9df5ceba51c11a88b6cc73521e4c2ec (patch) | |
tree | 694f740c2811fe3431b9fafbb5d28ef40df91678 /src | |
parent | ce21dc3f74ff0f647a8d0dee7595ece1fab14aaf (diff) | |
parent | 5077aefc30fd3ad1a5b8fdfe4aada8fda471a37c (diff) | |
download | android_packages_apps_Trebuchet-6687ba0cc9df5ceba51c11a88b6cc73521e4c2ec.tar.gz android_packages_apps_Trebuchet-6687ba0cc9df5ceba51c11a88b6cc73521e4c2ec.tar.bz2 android_packages_apps_Trebuchet-6687ba0cc9df5ceba51c11a88b6cc73521e4c2ec.zip |
Merge "Skip starting new fragment, if the manager is in paused state" into ub-launcher3-master
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/launcher3/SettingsActivity.java | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/com/android/launcher3/SettingsActivity.java b/src/com/android/launcher3/SettingsActivity.java index 8589b7ee6..1f802267c 100644 --- a/src/com/android/launcher3/SettingsActivity.java +++ b/src/com/android/launcher3/SettingsActivity.java @@ -88,6 +88,11 @@ public class SettingsActivity extends Activity @Override public boolean onPreferenceStartFragment( PreferenceFragment preferenceFragment, Preference pref) { + if (getFragmentManager().isStateSaved()) { + // Sometimes onClick can come after onPause because of being posted on the handler. + // Skip starting new fragments in that case. + return false; + } Fragment f = Fragment.instantiate(this, pref.getFragment(), pref.getExtras()); if (f instanceof DialogFragment) { ((DialogFragment) f).show(getFragmentManager(), pref.getKey()); @@ -241,8 +246,7 @@ public class SettingsActivity extends Activity * Content observer which listens for system badging setting changes, * and updates the launcher badging setting subtext accordingly. */ - private static class IconBadgingObserver extends SettingsObserver.Secure - implements Preference.OnPreferenceClickListener { + private static class IconBadgingObserver extends SettingsObserver.Secure { private final ButtonPreference mBadgingPref; private final ContentResolver mResolver; @@ -275,16 +279,11 @@ public class SettingsActivity extends Activity } } mBadgingPref.setWidgetFrameVisible(!serviceEnabled); - mBadgingPref.setOnPreferenceClickListener(serviceEnabled ? null : this); + mBadgingPref.setFragment( + serviceEnabled ? null : NotificationAccessConfirmation.class.getName()); mBadgingPref.setSummary(summary); } - - @Override - public boolean onPreferenceClick(Preference preference) { - new NotificationAccessConfirmation().show(mFragmentManager, "notification_access"); - return true; - } } public static class NotificationAccessConfirmation |