| Index: third_party/WebKit/Source/core/input/EventHandler.cpp
|
| diff --git a/third_party/WebKit/Source/core/input/EventHandler.cpp b/third_party/WebKit/Source/core/input/EventHandler.cpp
|
| index 47861ee82accc725137fb84ebbac9b5d1eb3bf63..f83edc7a4606cc554d29e34f8cf26c88668529f7 100644
|
| --- a/third_party/WebKit/Source/core/input/EventHandler.cpp
|
| +++ b/third_party/WebKit/Source/core/input/EventHandler.cpp
|
| @@ -91,6 +91,7 @@
|
| #include "platform/TraceEvent.h"
|
| #include "platform/WindowsKeyboardCodes.h"
|
| #include "platform/geometry/FloatPoint.h"
|
| +#include "platform/graphics/GraphicsScreen.h"
|
| #include "platform/graphics/Image.h"
|
| #include "platform/heap/Handle.h"
|
| #include "platform/scroll/ScrollAnimatorBase.h"
|
| @@ -3449,8 +3450,11 @@ bool EventHandler::handleDrag(const MouseEventWithHitTestResults& event, DragIni
|
| // Once we're past the hysteresis point, we don't want to treat this gesture as a click
|
| invalidateClick();
|
|
|
| - if (!tryStartDrag(event)) {
|
| - // Something failed to start the drag, clean up.
|
| + uintptr_t previousId = setCurrentScreenId(Page::screenId(m_frame->page()));
|
| + bool dragStarted = tryStartDrag(event);
|
| + setCurrentScreenId(previousId);
|
| +
|
| + if (!dragStarted) { // Something failed to start the drag, clean up.
|
| clearDragDataTransfer();
|
| dragState().m_dragSrc = nullptr;
|
| }
|
|
|