summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/dragndrop/DragController.java
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2018-03-22 12:49:12 -0700
committerSunny Goyal <sunnygoyal@google.com>2018-03-22 12:50:12 -0700
commitda3cc7a9396593615731701bdaeeb817b6a17244 (patch)
treee00b3129c9e7f9c757d65ca566538172d3605cd5 /src/com/android/launcher3/dragndrop/DragController.java
parentedc6fb4061c1e2dfdf80ef055ff18a25db3e77ab (diff)
downloadandroid_packages_apps_Trebuchet-da3cc7a9396593615731701bdaeeb817b6a17244.tar.gz
android_packages_apps_Trebuchet-da3cc7a9396593615731701bdaeeb817b6a17244.tar.bz2
android_packages_apps_Trebuchet-da3cc7a9396593615731701bdaeeb817b6a17244.zip
Fixing drag and drop states
> Not sending acceptDrop if we are not dragging > Removing workspace scrim in all-apps Bug: 74775232 Change-Id: I5b5354ec249d684ffccd4aacd3c47377cc0eb661
Diffstat (limited to 'src/com/android/launcher3/dragndrop/DragController.java')
-rw-r--r--src/com/android/launcher3/dragndrop/DragController.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/com/android/launcher3/dragndrop/DragController.java b/src/com/android/launcher3/dragndrop/DragController.java
index 818cea76c..5c6946c47 100644
--- a/src/com/android/launcher3/dragndrop/DragController.java
+++ b/src/com/android/launcher3/dragndrop/DragController.java
@@ -583,6 +583,12 @@ public class DragController implements DragDriver.EventListener, TouchController
}
mDragObject.dragComplete = true;
+ if (mIsInPreDrag) {
+ if (dropTarget != null) {
+ dropTarget.onDragExit(mDragObject);
+ }
+ return;
+ }
// Drop onto the target.
boolean accepted = false;
@@ -591,17 +597,15 @@ public class DragController implements DragDriver.EventListener, TouchController
if (dropTarget.acceptDrop(mDragObject)) {
if (flingAnimation != null) {
flingAnimation.run();
- } else if (!mIsInPreDrag) {
+ } else {
dropTarget.onDrop(mDragObject, mOptions);
}
accepted = true;
}
}
final View dropTargetAsView = dropTarget instanceof View ? (View) dropTarget : null;
- if (!mIsInPreDrag) {
- mLauncher.getUserEventDispatcher().logDragNDrop(mDragObject, dropTargetAsView);
- dispatchDropComplete(dropTargetAsView, accepted);
- }
+ mLauncher.getUserEventDispatcher().logDragNDrop(mDragObject, dropTargetAsView);
+ dispatchDropComplete(dropTargetAsView, accepted);
}
private DropTarget findDropTarget(int x, int y, int[] dropCoordinates) {