Merge \"Always return valid ClipDescription for ACTION_DRAG_EXITED\" into nyc-mr1-dev

am: 278676bdeb

Change-Id: I51a339a1a821439b5c90079812aea56833872b75
This commit is contained in:
Vladislav Kaznacheev
2016-07-15 18:38:08 +00:00
committed by android-build-merger

View File

@@ -5502,6 +5502,15 @@ public final class ViewRootImpl implements ViewParent,
if (mView != null && mAdded) {
final int what = event.mAction;
// Cache the drag description when the operation starts, then fill it in
// on subsequent calls as a convenience
if (what == DragEvent.ACTION_DRAG_STARTED) {
mCurrentDragView = null; // Start the current-recipient tracking
mDragDescription = event.mClipDescription;
} else {
event.mClipDescription = mDragDescription;
}
if (what == DragEvent.ACTION_DRAG_EXITED) {
// A direct EXITED event means that the window manager knows we've just crossed
// a window boundary, so the current drag target within this one must have
@@ -5509,15 +5518,6 @@ public final class ViewRootImpl implements ViewParent,
// for now.
mView.dispatchDragEvent(event);
} else {
// Cache the drag description when the operation starts, then fill it in
// on subsequent calls as a convenience
if (what == DragEvent.ACTION_DRAG_STARTED) {
mCurrentDragView = null; // Start the current-recipient tracking
mDragDescription = event.mClipDescription;
} else {
event.mClipDescription = mDragDescription;
}
// For events with a [screen] location, translate into window coordinates
if ((what == DragEvent.ACTION_DRAG_LOCATION) || (what == DragEvent.ACTION_DROP)) {
mDragPoint.set(event.mX, event.mY);