| Index: Source/core/frame/EventHandlerRegistry.h
|
| diff --git a/Source/core/frame/EventHandlerRegistry.h b/Source/core/frame/EventHandlerRegistry.h
|
| index e66a8d4dadf62b17cc370f4d66735fcbf5c9f674..8da1547300517bcbb8879071a0f06f0fa94faff0 100644
|
| --- a/Source/core/frame/EventHandlerRegistry.h
|
| +++ b/Source/core/frame/EventHandlerRegistry.h
|
| @@ -28,6 +28,7 @@ public:
|
| enum EventHandlerClass {
|
| ScrollEvent,
|
| WheelEvent,
|
| + TouchEvent,
|
| #if ENABLE(ASSERT)
|
| // Additional event categories for verifying handler tracking logic.
|
| EventsForTesting,
|
| @@ -47,13 +48,15 @@ public:
|
| void didRemoveEventHandler(EventTarget&, const AtomicString& eventType);
|
| void didRemoveEventHandler(EventTarget&, EventHandlerClass);
|
| void didRemoveAllEventHandlers(EventTarget&);
|
| +
|
| void didMoveIntoFrameHost(EventTarget&);
|
| void didMoveOutOfFrameHost(EventTarget&);
|
| + static void didMoveBetweenFrameHosts(EventTarget&, FrameHost* oldFrameHost, FrameHost* newFrameHost);
|
|
|
| - // Either |documentDetached| or |didMoveOutOfFrameHost| must be called
|
| - // whenever the FrameHost that is associated with a registered event target
|
| - // changes. This ensures the registry does not end up with stale references
|
| - // to handlers that are no longer related to it.
|
| + // Either |documentDetached| or |didMove{Into,OutOf,Between}FrameHosts| must
|
| + // be called whenever the FrameHost that is associated with a registered event
|
| + // target changes. This ensures the registry does not end up with stale
|
| + // references to handlers that are no longer related to it.
|
| void documentDetached(Document&);
|
|
|
| void trace(Visitor*);
|
| @@ -79,6 +82,11 @@ private:
|
| // between the two cases.
|
| void notifyHasHandlersChanged(EventHandlerClass, bool hasActiveHandlers);
|
|
|
| + // Called to notify clients whenever a single event handler target is
|
| + // registered or unregistered. If several handlers are registered for the
|
| + // same target, only the first registration will trigger this notification.
|
| + void notifyDidAddOrRemoveEventHandlerTarget(EventHandlerClass);
|
| +
|
| // Record a change operation to a given event handler class and notify any
|
| // parent registry and other clients accordingly.
|
| void updateEventHandlerOfType(ChangeOperation, const AtomicString& eventType, EventTarget*);
|
|
|