diff options
author | Tony Wickham <twickham@google.com> | 2018-05-03 21:38:04 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-05-03 21:38:04 +0000 |
commit | 4c7507571c3d744a9c507086479065bfbd24191c (patch) | |
tree | ce073520e52a2733e90c338a367748ec636d3ece /src_ui_overrides/com/android | |
parent | 6e95c8f34ccfd2214fe5e46ec09bf60dd2cfb1c0 (diff) | |
parent | 52240a3aa069ffd97ffe6a85ed6cd452b295fa2d (diff) | |
download | android_packages_apps_Trebuchet-4c7507571c3d744a9c507086479065bfbd24191c.tar.gz android_packages_apps_Trebuchet-4c7507571c3d744a9c507086479065bfbd24191c.tar.bz2 android_packages_apps_Trebuchet-4c7507571c3d744a9c507086479065bfbd24191c.zip |
Merge "Only detect swipe directions that lead to new states" into ub-launcher3-edmonton
Diffstat (limited to 'src_ui_overrides/com/android')
-rw-r--r-- | src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java b/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java index d1cddc18f..860be5ff7 100644 --- a/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java +++ b/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java @@ -17,12 +17,17 @@ import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; */ public class AllAppsSwipeController extends AbstractStateChangeTouchController { + private MotionEvent mTouchDownEvent; + public AllAppsSwipeController(Launcher l) { super(l, SwipeDetector.VERTICAL); } @Override protected boolean canInterceptTouch(MotionEvent ev) { + if (ev.getAction() == MotionEvent.ACTION_DOWN) { + mTouchDownEvent = ev; + } if (mCurrentAnimation != null) { // If we are already animating from a previous state, we can intercept. return true; @@ -41,18 +46,6 @@ public class AllAppsSwipeController extends AbstractStateChangeTouchController { } @Override - protected int getSwipeDirection(MotionEvent ev) { - if (mLauncher.isInState(ALL_APPS)) { - mStartContainerType = ContainerType.ALLAPPS; - return SwipeDetector.DIRECTION_NEGATIVE; - } else { - mStartContainerType = mLauncher.getDragLayer().isEventOverHotseat(ev) ? - ContainerType.HOTSEAT : ContainerType.WORKSPACE; - return SwipeDetector.DIRECTION_POSITIVE; - } - } - - @Override protected LauncherState getTargetState(LauncherState fromState, boolean isDragTowardPositive) { if (fromState == NORMAL && isDragTowardPositive) { return ALL_APPS; @@ -63,6 +56,12 @@ public class AllAppsSwipeController extends AbstractStateChangeTouchController { } @Override + protected int getLogContainerTypeForNormalState() { + return mLauncher.getDragLayer().isEventOverHotseat(mTouchDownEvent) ? + ContainerType.HOTSEAT : ContainerType.WORKSPACE; + } + + @Override protected float initCurrentAnimation() { float range = getShiftRange(); long maxAccuracy = (long) (2 * range); |