summaryrefslogtreecommitdiffstats
path: root/quickstep
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2018-07-10 19:48:24 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2018-07-10 19:48:24 +0000
commit17b7d3659451472302f200c5b27174e03c735520 (patch)
treee86a14ce5ba4e115c246939b0e638795459e02ee /quickstep
parentd7e217abb309c50517945d84435f62011d419fc9 (diff)
parent7068f56922be6ee73529ada841eb879dec58ca87 (diff)
downloadandroid_packages_apps_Trebuchet-17b7d3659451472302f200c5b27174e03c735520.tar.gz
android_packages_apps_Trebuchet-17b7d3659451472302f200c5b27174e03c735520.tar.bz2
android_packages_apps_Trebuchet-17b7d3659451472302f200c5b27174e03c735520.zip
Merge "Touch up/cancel over navigation bar will send down event to drag layer" into ub-launcher3-master
Diffstat (limited to 'quickstep')
-rw-r--r--quickstep/src/com/android/quickstep/TouchInteractionService.java26
1 files changed, 18 insertions, 8 deletions
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java
index 6c542628e..c555bc6f7 100644
--- a/quickstep/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -299,17 +299,15 @@ public class TouchInteractionService extends Service {
mInvalidated = true;
}
break;
+ case ACTION_CANCEL:
+ case ACTION_UP:
+ startTouchTracking(ev);
+ break;
case ACTION_MOVE: {
float displacement = ev.getY() - mDownPos.y;
if (Math.abs(displacement) >= mTouchSlop) {
- mTarget.getLocationOnScreen(mLocationOnScreen);
-
- // Send a down event only when mTouchSlop is crossed.
- MotionEvent down = MotionEvent.obtain(ev);
- down.setAction(ACTION_DOWN);
- sendEvent(down);
- down.recycle();
- mTrackingStarted = true;
+ // Start tracking only when mTouchSlop is crossed.
+ startTouchTracking(ev);
}
}
}
@@ -324,6 +322,18 @@ public class TouchInteractionService extends Service {
}
}
+ private void startTouchTracking(MotionEvent ev) {
+ mTarget.getLocationOnScreen(mLocationOnScreen);
+
+ // Send down touch event
+ MotionEvent down = MotionEvent.obtain(ev);
+ down.setAction(ACTION_DOWN);
+ sendEvent(down);
+ down.recycle();
+
+ mTrackingStarted = true;
+ }
+
private void sendEvent(MotionEvent ev) {
int flags = ev.getEdgeFlags();
ev.setEdgeFlags(flags | EDGE_NAV_BAR);