| Index: third_party/WebKit/Source/core/input/MouseEventManager.cpp
|
| diff --git a/third_party/WebKit/Source/core/input/MouseEventManager.cpp b/third_party/WebKit/Source/core/input/MouseEventManager.cpp
|
| index 2a94832d32f2622b16ed9661b5cec4462221a4dd..6f9bd387663739cba798f67fedf1514bc60ec86e 100644
|
| --- a/third_party/WebKit/Source/core/input/MouseEventManager.cpp
|
| +++ b/third_party/WebKit/Source/core/input/MouseEventManager.cpp
|
| @@ -718,7 +718,10 @@ WebInputEventResult MouseEventManager::HandleMouseDraggedEvent(
|
| // that ends as a result of a mouse release does not send a mouse release
|
| // event. As a result, m_mousePressed also ends up remaining true until
|
| // the next mouse release event seen by the EventHandler.
|
| - if (event.Event().button != WebPointerProperties::Button::kLeft)
|
| + // 3. When pressing Esc key while dragging and the object is outside of the
|
| + // we get a mouse leave event here
|
| + if (event.Event().button != WebPointerProperties::Button::kLeft ||
|
| + event.Event().GetType() == WebInputEvent::kMouseLeave)
|
| mouse_pressed_ = false;
|
|
|
| if (!mouse_pressed_)
|
|
|