mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-01 16:26:47 +00:00
Fix 3377113: Mini homescreen outline wrong color
Couldn't repro this reliably, but the only way I could see it happening is if we got an UP event without a MOVE at the same location. This patch prevents that from happening. Change-Id: I473c4ea50474b45da8c5537efe39177c1423ae20
This commit is contained in:
@@ -557,6 +557,9 @@ public class DragController {
|
||||
handleMoveEvent(screenX, screenY);
|
||||
break;
|
||||
case MotionEvent.ACTION_UP:
|
||||
// Ensure that we've processed a move event at the current pointer location.
|
||||
handleMoveEvent(screenX, screenY);
|
||||
|
||||
mHandler.removeCallbacks(mScrollRunnable);
|
||||
if (mDragging) {
|
||||
drop(screenX, screenY);
|
||||
@@ -571,10 +574,11 @@ public class DragController {
|
||||
return true;
|
||||
}
|
||||
|
||||
private boolean drop(float x, float y) {
|
||||
private void drop(float x, float y) {
|
||||
final int[] coordinates = mCoordinatesTemp;
|
||||
DropTarget dropTarget = findDropTarget((int) x, (int) y, coordinates);
|
||||
|
||||
boolean accepted = false;
|
||||
if (dropTarget != null) {
|
||||
dropTarget.onDragExit(mDragSource, coordinates[0], coordinates[1],
|
||||
(int) mTouchOffsetX, (int) mTouchOffsetY, mDragView, mDragInfo);
|
||||
@@ -582,16 +586,10 @@ public class DragController {
|
||||
(int) mTouchOffsetX, (int) mTouchOffsetY, mDragView, mDragInfo)) {
|
||||
dropTarget.onDrop(mDragSource, coordinates[0], coordinates[1],
|
||||
(int) mTouchOffsetX, (int) mTouchOffsetY, mDragView, mDragInfo);
|
||||
mDragSource.onDropCompleted((View) dropTarget, mDragInfo, true);
|
||||
return true;
|
||||
} else {
|
||||
mDragSource.onDropCompleted((View) dropTarget, mDragInfo, false);
|
||||
return true;
|
||||
accepted = true;
|
||||
}
|
||||
} else {
|
||||
mDragSource.onDropCompleted(null, mDragInfo, false);
|
||||
}
|
||||
return false;
|
||||
mDragSource.onDropCompleted(null, mDragInfo, accepted);
|
||||
}
|
||||
|
||||
private DropTarget findDropTarget(int x, int y, int[] dropCoordinates) {
|
||||
|
||||
Reference in New Issue
Block a user