diff --git a/src/com/android/launcher3/touch/WorkspaceTouchListener.java b/src/com/android/launcher3/touch/WorkspaceTouchListener.java index e8941e6969..fe0bf6d632 100644 --- a/src/com/android/launcher3/touch/WorkspaceTouchListener.java +++ b/src/com/android/launcher3/touch/WorkspaceTouchListener.java @@ -121,6 +121,9 @@ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListe mLongPressState = STATE_COMPLETED; } + boolean isInAllAppsBottomSheet = mLauncher.isInState(ALL_APPS) + && mLauncher.getDeviceProfile().isTablet; + final boolean result; if (mLongPressState == STATE_COMPLETED) { // We have handled the touch, so workspace does not need to know anything anymore. @@ -136,8 +139,9 @@ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListe result = true; } else { - // We don't want to handle touch, let workspace handle it as usual. - result = false; + // We don't want to handle touch unless we're in AllApps bottom sheet, let workspace + // handle it as usual. + result = isInAllAppsBottomSheet; } if (action == ACTION_UP || action == ACTION_POINTER_UP) { @@ -153,9 +157,7 @@ public class WorkspaceTouchListener extends GestureDetector.SimpleOnGestureListe if (action == ACTION_UP || action == ACTION_CANCEL) { cancelLongPress(); } - if (action == ACTION_UP - && mLauncher.isInState(ALL_APPS) - && mLauncher.getDeviceProfile().isTablet) { + if (action == ACTION_UP && isInAllAppsBottomSheet) { mLauncher.getStateManager().goToState(NORMAL); mLauncher.getStatsLogManager().logger() .withSrcState(ALL_APPS.statsLogOrdinal)