From 855b1b5fff5f6f03a641b3b6973780a24fd9641e Mon Sep 17 00:00:00 2001 From: Tony Wickham Date: Mon, 28 Mar 2016 16:56:30 -0700 Subject: Add distance threshold for dragged items before accepted by targets. With the new spring-loaded workspace, items are often very close to button drop targets (e.g. App Info) at the start of a drag. This threshold makes it less likely to accidentally drop on a target. Bug: 24099531 Change-Id: I4912ceeb0b63958816177c7bde073e825176d987 --- src/com/android/launcher3/dragndrop/DragController.java | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/com/android/launcher3/dragndrop') diff --git a/src/com/android/launcher3/dragndrop/DragController.java b/src/com/android/launcher3/dragndrop/DragController.java index 7524128d4..f4470f320 100644 --- a/src/com/android/launcher3/dragndrop/DragController.java +++ b/src/com/android/launcher3/dragndrop/DragController.java @@ -276,6 +276,9 @@ public class DragController implements DragDriver.EventListener { mLauncher.getDragLayer().performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); dragView.show(mMotionDownX, mMotionDownY); + mDistanceSinceScroll = 0; + mLastTouch[0] = mMotionDownX; + mLastTouch[1] = mMotionDownY; handleMoveEvent(mMotionDownX, mMotionDownY); return dragView; } @@ -536,6 +539,10 @@ public class DragController implements DragDriver.EventListener { checkScrollState(x, y); } + public float getDistanceDragged() { + return mDistanceSinceScroll; + } + public void forceTouchMove() { int[] dummyCoordinates = mCoordinatesTemp; DropTarget dropTarget = findDropTarget(mLastTouch[0], mLastTouch[1], dummyCoordinates); -- cgit v1.2.3