| OLD | NEW | 
|    1 // Copyright 2014 The Chromium Authors. All rights reserved. |    1 // Copyright 2014 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #ifndef EventHandlerRegistry_h |    5 #ifndef EventHandlerRegistry_h | 
|    6 #define EventHandlerRegistry_h |    6 #define EventHandlerRegistry_h | 
|    7  |    7  | 
|    8 #include "core/CoreExport.h" |    8 #include "core/CoreExport.h" | 
|    9 #include "core/frame/FrameHost.h" |    9 #include "core/frame/FrameHost.h" | 
|   10 #include "wtf/HashCountedSet.h" |   10 #include "wtf/HashCountedSet.h" | 
|   11  |   11  | 
|   12 namespace blink { |   12 namespace blink { | 
|   13  |   13  | 
|   14 class Document; |   14 class Document; | 
|   15 class EventListenerOptions; |   15 class EventListenerOptions; | 
|   16 class EventTarget; |   16 class EventTarget; | 
|   17  |   17  | 
|   18 typedef HashCountedSet<RawPtrWillBeUntracedMember<EventTarget>> EventTargetSet; |   18 typedef HashCountedSet<UntracedMember<EventTarget>> EventTargetSet; | 
|   19  |   19  | 
|   20 // Registry for keeping track of event handlers. Note that only handlers on |   20 // Registry for keeping track of event handlers. Note that only handlers on | 
|   21 // documents that can be rendered or can receive input (i.e., are attached to a |   21 // documents that can be rendered or can receive input (i.e., are attached to a | 
|   22 // FrameHost) are registered here. |   22 // FrameHost) are registered here. | 
|   23 class CORE_EXPORT EventHandlerRegistry final : public NoBaseWillBeGarbageCollect
     edFinalized<EventHandlerRegistry> { |   23 class CORE_EXPORT EventHandlerRegistry final : public GarbageCollectedFinalized<
     EventHandlerRegistry> { | 
|   24     USING_FAST_MALLOC_WILL_BE_REMOVED(EventHandlerRegistry); |  | 
|   25 public: |   24 public: | 
|   26     explicit EventHandlerRegistry(FrameHost&); |   25     explicit EventHandlerRegistry(FrameHost&); | 
|   27     virtual ~EventHandlerRegistry(); |   26     virtual ~EventHandlerRegistry(); | 
|   28  |   27  | 
|   29     // Supported event handler classes. Note that each one may correspond to |   28     // Supported event handler classes. Note that each one may correspond to | 
|   30     // multiple event types. |   29     // multiple event types. | 
|   31     enum EventHandlerClass { |   30     enum EventHandlerClass { | 
|   32         ScrollEvent, |   31         ScrollEvent, | 
|   33         WheelEventBlocking, |   32         WheelEventBlocking, | 
|   34         WheelEventPassive, |   33         WheelEventPassive, | 
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   95     // Record a change operation to a given event handler class and notify any |   94     // Record a change operation to a given event handler class and notify any | 
|   96     // parent registry and other clients accordingly. |   95     // parent registry and other clients accordingly. | 
|   97     void updateEventHandlerOfType(ChangeOperation, const AtomicString& eventType
     , const EventListenerOptions&, EventTarget*); |   96     void updateEventHandlerOfType(ChangeOperation, const AtomicString& eventType
     , const EventListenerOptions&, EventTarget*); | 
|   98  |   97  | 
|   99     void updateEventHandlerInternal(ChangeOperation, EventHandlerClass, EventTar
     get*); |   98     void updateEventHandlerInternal(ChangeOperation, EventHandlerClass, EventTar
     get*); | 
|  100  |   99  | 
|  101     void updateAllEventHandlers(ChangeOperation, EventTarget&); |  100     void updateAllEventHandlers(ChangeOperation, EventTarget&); | 
|  102  |  101  | 
|  103     void checkConsistency() const; |  102     void checkConsistency() const; | 
|  104  |  103  | 
|  105     RawPtrWillBeMember<FrameHost> m_frameHost; |  104     Member<FrameHost> m_frameHost; | 
|  106     EventTargetSet m_targets[EventHandlerClassCount]; |  105     EventTargetSet m_targets[EventHandlerClassCount]; | 
|  107 }; |  106 }; | 
|  108  |  107  | 
|  109 } // namespace blink |  108 } // namespace blink | 
|  110  |  109  | 
|  111 #endif // EventHandlerRegistry_h |  110 #endif // EventHandlerRegistry_h | 
| OLD | NEW |