Disable the two-swipe when quickstep is disabled.
Change-Id: I5eee57def216406fd8f7766ba4b87cd5de98f0a4
diff --git a/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java b/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java
index 13f9601..447c56e 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java
@@ -16,7 +16,11 @@
package com.android.launcher3.uioverrides;
+import static com.android.launcher3.Utilities.getPrefs;
+import static com.android.quickstep.OverviewInteractionState.KEY_SWIPE_UP_ENABLED;
+
import android.content.Context;
+import android.content.SharedPreferences;
import android.view.View;
import android.view.View.AccessibilityDelegate;
@@ -33,6 +37,14 @@
public class UiFactory {
public static TouchController[] createTouchControllers(Launcher launcher) {
+ SharedPreferences prefs = getPrefs(launcher);
+ boolean swipeUpEnabled = prefs.getBoolean(KEY_SWIPE_UP_ENABLED, true);
+ if (!swipeUpEnabled) {
+ return new TouchController[] {
+ launcher.getDragController(),
+ new LandscapeStatesTouchController(launcher),
+ new TaskViewTouchController(launcher)};
+ }
if (launcher.getDeviceProfile().isVerticalBarLayout()) {
return new TouchController[] {
launcher.getDragController(),
diff --git a/quickstep/src/com/android/quickstep/OverviewInteractionState.java b/quickstep/src/com/android/quickstep/OverviewInteractionState.java
index 522a883..22b1757 100644
--- a/quickstep/src/com/android/quickstep/OverviewInteractionState.java
+++ b/quickstep/src/com/android/quickstep/OverviewInteractionState.java
@@ -70,7 +70,7 @@
return INSTANCE;
}
- private static final String KEY_SWIPE_UP_ENABLED = "pref_enable_quickstep";
+ public static final String KEY_SWIPE_UP_ENABLED = "pref_enable_quickstep";
private static final int MSG_SET_PROXY = 200;
private static final int MSG_SET_BACK_BUTTON_VISIBLE = 201;
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index e779b5e..ed94aa43 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -242,6 +242,12 @@
private RotationHelper mRotationHelper;
+ // Used to keep track of the swipe up state
+ private SharedPreferences.OnSharedPreferenceChangeListener mSharedPrefsListener =
+ (sharedPreferences, s) -> {
+ mDragLayer.setup(mDragController);
+ };
+
@Override
protected void onCreate(Bundle savedInstanceState) {
if (DEBUG_STRICT_MODE) {
@@ -273,6 +279,7 @@
initDeviceProfile(app.getInvariantDeviceProfile());
mSharedPrefs = Utilities.getPrefs(this);
+ mSharedPrefs.registerOnSharedPreferenceChangeListener(mSharedPrefsListener);
mIconCache = app.getIconCache();
mAccessibilityDelegate = new LauncherAccessibilityDelegate(this);
@@ -758,6 +765,7 @@
}
NotificationListener.removeNotificationsChangedListener();
getStateManager().moveToRestState();
+
}
@Override
@@ -1340,6 +1348,7 @@
LauncherAppState.getInstance(this).setLauncher(null);
}
mRotationHelper.destroy();
+ mSharedPrefs.unregisterOnSharedPreferenceChangeListener(mSharedPrefsListener);
try {
mAppWidgetHost.stopListening();