| Index: Source/WebCore/dom/EventQueue.h
|
| ===================================================================
|
| --- Source/WebCore/dom/EventQueue.h (revision 77575)
|
| +++ Source/WebCore/dom/EventQueue.h (working copy)
|
| @@ -27,38 +27,51 @@
|
| #ifndef EventQueue_h
|
| #define EventQueue_h
|
|
|
| -#include "Timer.h"
|
| #include <wtf/HashSet.h>
|
| #include <wtf/Noncopyable.h>
|
| +#include <wtf/OwnPtr.h>
|
| +#include <wtf/PassOwnPtr.h>
|
| #include <wtf/RefPtr.h>
|
| #include <wtf/Vector.h>
|
|
|
| namespace WebCore {
|
|
|
| class Event;
|
| +class EventQueueTimer;
|
| class Node;
|
| +class ScriptExecutionContext;
|
|
|
| class EventQueue {
|
| WTF_MAKE_NONCOPYABLE(EventQueue);
|
|
|
| +
|
| public:
|
| enum ScrollEventTargetType {
|
| ScrollEventDocumentTarget,
|
| ScrollEventElementTarget
|
| };
|
|
|
| - EventQueue();
|
| + static PassOwnPtr<EventQueue> create(ScriptExecutionContext* context)
|
| + {
|
| + return adoptPtr(new EventQueue(context));
|
| + }
|
|
|
| + ~EventQueue();
|
| +
|
| void enqueueEvent(PassRefPtr<Event>);
|
| void enqueueScrollEvent(PassRefPtr<Node>, ScrollEventTargetType);
|
|
|
| private:
|
| - void pendingEventTimerFired(Timer<EventQueue>*);
|
| + explicit EventQueue(ScriptExecutionContext*);
|
| +
|
| + void pendingEventTimerFired();
|
| void dispatchEvent(PassRefPtr<Event>);
|
|
|
| - Timer<EventQueue> m_pendingEventTimer;
|
| + OwnPtr<EventQueueTimer> m_pendingEventTimer;
|
| Vector<RefPtr<Event> > m_queuedEvents;
|
| HashSet<Node*> m_nodesWithQueuedScrollEvents;
|
| +
|
| + friend class EventQueueTimer;
|
| };
|
|
|
| }
|
|
|