diff options
author | Adam Cohen <adamcohen@google.com> | 2013-07-01 17:03:59 -0700 |
---|---|---|
committer | Adam Cohen <adamcohen@google.com> | 2013-07-08 18:32:57 -0700 |
commit | 7d30a37007bac318db1c9af47a9af12d348042a5 (patch) | |
tree | 83524dc8cd4dd05c0e8ce3a9f5607e3e7c08efee /src/com/android/launcher3/DragController.java | |
parent | 70c987a0fea53583b22650bed6251e2dcc68bdac (diff) | |
download | android_packages_apps_Trebuchet-7d30a37007bac318db1c9af47a9af12d348042a5.tar.gz android_packages_apps_Trebuchet-7d30a37007bac318db1c9af47a9af12d348042a5.tar.bz2 android_packages_apps_Trebuchet-7d30a37007bac318db1c9af47a9af12d348042a5.zip |
Porting PagedView from KG to gain simplified scaling model, reordering
-> We are no longer scaling individual Celllayouts, instead we are scaling
the entire Workspace (and the CellLayouts come along for the ride)
-> Due to the above change, many assumptions were broken. In particular,
our drag and drop / animation archiecture is fairly fragile due to the
frequent and complex mapping of points between different bits of the
hierarchy. This CL contains a number of fixes which address such
breakages.
Change-Id: I2e630eab17528729b764b61f587858f6499fd318
Diffstat (limited to 'src/com/android/launcher3/DragController.java')
-rw-r--r-- | src/com/android/launcher3/DragController.java | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/src/com/android/launcher3/DragController.java b/src/com/android/launcher3/DragController.java index 970ce2611..c59f34c25 100644 --- a/src/com/android/launcher3/DragController.java +++ b/src/com/android/launcher3/DragController.java @@ -509,10 +509,6 @@ public class DragController { private void checkTouchMove(DropTarget dropTarget) { if (dropTarget != null) { - DropTarget delegate = dropTarget.getDropTargetDelegate(mDragObject); - if (delegate != null) { - dropTarget = delegate; - } if (mLastDropTarget != dropTarget) { if (mLastDropTarget != null) { mLastDropTarget.onDragExit(mDragObject); @@ -701,24 +697,15 @@ public class DragController { if (!target.isDropEnabled()) continue; - target.getHitRect(r); - - // Convert the hit rect to DragLayer coordinates - target.getLocationInDragLayer(dropCoordinates); - r.offset(dropCoordinates[0] - target.getLeft(), dropCoordinates[1] - target.getTop()); + target.getHitRectRelativeToDragLayer(r); mDragObject.x = x; mDragObject.y = y; if (r.contains(x, y)) { - DropTarget delegate = target.getDropTargetDelegate(mDragObject); - if (delegate != null) { - target = delegate; - target.getLocationInDragLayer(dropCoordinates); - } - // Make dropCoordinates relative to the DropTarget - dropCoordinates[0] = x - dropCoordinates[0]; - dropCoordinates[1] = y - dropCoordinates[1]; + dropCoordinates[0] = x; + dropCoordinates[1] = y; + mLauncher.getDragLayer().mapCoordInSelfToDescendent((View) target, dropCoordinates); return target; } |