| 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 5ec337e655cfa8a1cfe03b4df1cb535a050dfb01..4939887c51ad89f460030c672903bd81b1365a37 100644
|
| --- a/third_party/WebKit/Source/core/input/EventHandler.cpp
|
| +++ b/third_party/WebKit/Source/core/input/EventHandler.cpp
|
| @@ -104,6 +104,12 @@ namespace blink {
|
|
|
| namespace {
|
|
|
| +bool hasTouchHandlers(const EventHandlerRegistry& registry)
|
| +{
|
| + return registry.hasEventHandlers(EventHandlerRegistry::TouchEventBlocking)
|
| + || registry.hasEventHandlers(EventHandlerRegistry::TouchEventPassive);
|
| +}
|
| +
|
| WebInputEventResult mergeEventResult(WebInputEventResult responseA, WebInputEventResult responseB)
|
| {
|
| // The ordering of the enumeration is specific. There are times that
|
| @@ -4002,7 +4008,7 @@ WebInputEventResult EventHandler::handleTouchEvent(const PlatformTouchEvent& eve
|
| // If there's no document receiving touch events, or no handlers on the
|
| // document set to receive the events, then we can skip all the rest of
|
| // this work.
|
| - if (!m_touchSequenceDocument || !m_touchSequenceDocument->frameHost() || !m_touchSequenceDocument->frameHost()->eventHandlerRegistry().hasEventHandlers(EventHandlerRegistry::TouchEvent) || !m_touchSequenceDocument->frame()) {
|
| + if (!m_touchSequenceDocument || !m_touchSequenceDocument->frameHost() || !hasTouchHandlers(m_touchSequenceDocument->frameHost()->eventHandlerRegistry()) || !m_touchSequenceDocument->frame()) {
|
| if (allTouchReleased) {
|
| m_touchSequenceDocument.clear();
|
| m_touchSequenceUserGestureToken.clear();
|
|
|