Ensure drag outline & crosshairs disappear on drag cancel
Change-Id: I165d45846c0bfe74eda0d61b55e5b93fbfccdef2
This commit is contained in:
@@ -2398,8 +2398,7 @@ public class Workspace extends SmoothPagedView
|
||||
}
|
||||
}
|
||||
|
||||
public void onDragExit(DragSource source, int x, int y, int xOffset,
|
||||
int yOffset, DragView dragView, Object dragInfo) {
|
||||
private void doDragExit() {
|
||||
mWasSpringLoadedOnDragExit = mShrinkState == ShrinkState.SPRING_LOADED;
|
||||
if (mDragTargetLayout != null) {
|
||||
mDragTargetLayout.onDragExit();
|
||||
@@ -2413,6 +2412,11 @@ public class Workspace extends SmoothPagedView
|
||||
clearAllHovers();
|
||||
}
|
||||
|
||||
public void onDragExit(DragSource source, int x, int y, int xOffset,
|
||||
int yOffset, DragView dragView, Object dragInfo) {
|
||||
doDragExit();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getHitRect(Rect outRect) {
|
||||
// We want the workspace to have the whole area of the display (it will find the correct
|
||||
@@ -2560,6 +2564,9 @@ public class Workspace extends SmoothPagedView
|
||||
mDragController = dragController;
|
||||
}
|
||||
|
||||
/**
|
||||
* Called at the end of a drag which originated on the workspace.
|
||||
*/
|
||||
public void onDropCompleted(View target, boolean success) {
|
||||
if (success) {
|
||||
if (target != this && mDragInfo != null) {
|
||||
@@ -2571,8 +2578,11 @@ public class Workspace extends SmoothPagedView
|
||||
// final Object tag = mDragInfo.cell.getTag();
|
||||
}
|
||||
} else if (mDragInfo != null) {
|
||||
boolean animateDrop = !mWasSpringLoadedOnDragExit;
|
||||
((CellLayout) getChildAt(mDragInfo.screen)).onDropChild(mDragInfo.cell, animateDrop);
|
||||
// NOTE: When 'success' is true, onDragExit is called by the DragController before
|
||||
// calling onDropCompleted(). We call it ourselves here, but maybe this should be
|
||||
// moved into DragController.cancelDrag().
|
||||
doDragExit();
|
||||
((CellLayout) getChildAt(mDragInfo.screen)).onDropChild(mDragInfo.cell, false);
|
||||
}
|
||||
mLauncher.unlockScreenOrientation();
|
||||
mDragOutline = null;
|
||||
|
||||
Reference in New Issue
Block a user