summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2018-09-21 17:18:39 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-09-21 17:18:39 +0000
commit6687ba0cc9df5ceba51c11a88b6cc73521e4c2ec (patch)
tree694f740c2811fe3431b9fafbb5d28ef40df91678 /src
parentce21dc3f74ff0f647a8d0dee7595ece1fab14aaf (diff)
parent5077aefc30fd3ad1a5b8fdfe4aada8fda471a37c (diff)
downloadandroid_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.java17
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