| Index: Source/core/dom/Node.cpp
|
| diff --git a/Source/core/dom/Node.cpp b/Source/core/dom/Node.cpp
|
| index eef69a897008bc9610bbd1a4f4d8e68ccaf53cd9..2d922722cd6d27062c182106ab2567ecb6c04856 100644
|
| --- a/Source/core/dom/Node.cpp
|
| +++ b/Source/core/dom/Node.cpp
|
| @@ -72,6 +72,7 @@
|
| #include "core/events/KeyboardEvent.h"
|
| #include "core/events/MouseEvent.h"
|
| #include "core/events/MutationEvent.h"
|
| +#include "core/events/PointerEvent.h"
|
| #include "core/events/TextEvent.h"
|
| #include "core/events/TouchEvent.h"
|
| #include "core/events/UIEvent.h"
|
| @@ -2107,10 +2108,10 @@ void Node::dispatchScopedEventDispatchMediator(PassRefPtrWillBeRawPtr<EventDispa
|
|
|
| bool Node::dispatchEvent(PassRefPtrWillBeRawPtr<Event> event)
|
| {
|
| - if (event->isMouseEvent())
|
| - return EventDispatcher::dispatchEvent(*this, MouseEventDispatchMediator::create(static_pointer_cast<MouseEvent>(event), MouseEventDispatchMediator::SyntheticMouseEvent));
|
| - if (event->isTouchEvent())
|
| - return dispatchTouchEvent(static_pointer_cast<TouchEvent>(event));
|
| + // For a PointerEvent, MouseEvent or TouchEvent, the 'relatedTarget' property must be updated
|
| + // during dispatch. This generic dispatcher can't handle this.
|
| + RELEASE_ASSERT(!event->isPointerEvent() && !event->isMouseEvent() && !event->isTouchEvent());
|
| +
|
| return EventDispatcher::dispatchEvent(*this, EventDispatchMediator::create(event));
|
| }
|
|
|
| @@ -2160,6 +2161,11 @@ bool Node::dispatchTouchEvent(PassRefPtrWillBeRawPtr<TouchEvent> event)
|
| return EventDispatcher::dispatchEvent(*this, TouchEventDispatchMediator::create(event));
|
| }
|
|
|
| +bool Node::dispatchPointerEvent(PassRefPtrWillBeRawPtr<PointerEvent> event)
|
| +{
|
| + return EventDispatcher::dispatchEvent(*this, PointerEventDispatchMediator::create(event));
|
| +}
|
| +
|
| void Node::dispatchSimulatedClick(Event* underlyingEvent, SimulatedClickMouseEventOptions eventOptions)
|
| {
|
| EventDispatcher::dispatchSimulatedClick(*this, underlyingEvent, eventOptions);
|
|
|