| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2011 Google Inc. All Rights Reserved. | 2 * Copyright (C) 2011 Google Inc. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 25 matching lines...) Expand all Loading... |
| 36 #include "wtf/text/StringImpl.h" | 36 #include "wtf/text/StringImpl.h" |
| 37 | 37 |
| 38 namespace blink { | 38 namespace blink { |
| 39 | 39 |
| 40 class Document; | 40 class Document; |
| 41 class Event; | 41 class Event; |
| 42 class EventTarget; | 42 class EventTarget; |
| 43 class FrameRequestCallback; | 43 class FrameRequestCallback; |
| 44 class MediaQueryListListener; | 44 class MediaQueryListListener; |
| 45 | 45 |
| 46 class ScriptedAnimationController : public RefCountedWillBeGarbageCollected<Scri
ptedAnimationController> { | 46 class ScriptedAnimationController : public GarbageCollected<ScriptedAnimationCon
troller> { |
| 47 DECLARE_EMPTY_DESTRUCTOR_WILL_BE_REMOVED(ScriptedAnimationController); | |
| 48 public: | 47 public: |
| 49 static PassRefPtrWillBeRawPtr<ScriptedAnimationController> create(Document*
document) | 48 static RawPtr<ScriptedAnimationController> create(Document* document) |
| 50 { | 49 { |
| 51 return adoptRefWillBeNoop(new ScriptedAnimationController(document)); | 50 return new ScriptedAnimationController(document); |
| 52 } | 51 } |
| 53 | 52 |
| 54 DECLARE_TRACE(); | 53 DECLARE_TRACE(); |
| 55 void clearDocumentPointer() { m_document = nullptr; } | 54 void clearDocumentPointer() { m_document = nullptr; } |
| 56 | 55 |
| 57 typedef int CallbackId; | 56 typedef int CallbackId; |
| 58 | 57 |
| 59 int registerCallback(FrameRequestCallback*); | 58 int registerCallback(FrameRequestCallback*); |
| 60 void cancelCallback(CallbackId); | 59 void cancelCallback(CallbackId); |
| 61 void serviceScriptedAnimations(double monotonicTimeNow); | 60 void serviceScriptedAnimations(double monotonicTimeNow); |
| 62 | 61 |
| 63 void enqueueEvent(PassRefPtrWillBeRawPtr<Event>); | 62 void enqueueEvent(RawPtr<Event>); |
| 64 void enqueuePerFrameEvent(PassRefPtrWillBeRawPtr<Event>); | 63 void enqueuePerFrameEvent(RawPtr<Event>); |
| 65 void enqueueMediaQueryChangeListeners(WillBeHeapVector<RefPtrWillBeMember<Me
diaQueryListListener>>&); | 64 void enqueueMediaQueryChangeListeners(HeapVector<Member<MediaQueryListListen
er>>&); |
| 66 | 65 |
| 67 void suspend(); | 66 void suspend(); |
| 68 void resume(); | 67 void resume(); |
| 69 | 68 |
| 70 void dispatchEventsAndCallbacksForPrinting(); | 69 void dispatchEventsAndCallbacksForPrinting(); |
| 71 private: | 70 private: |
| 72 explicit ScriptedAnimationController(Document*); | 71 explicit ScriptedAnimationController(Document*); |
| 73 | 72 |
| 74 void scheduleAnimationIfNeeded(); | 73 void scheduleAnimationIfNeeded(); |
| 75 | 74 |
| 76 void dispatchEvents(const AtomicString& eventInterfaceFilter = AtomicString(
)); | 75 void dispatchEvents(const AtomicString& eventInterfaceFilter = AtomicString(
)); |
| 77 void executeCallbacks(double monotonicTimeNow); | 76 void executeCallbacks(double monotonicTimeNow); |
| 78 void callMediaQueryListListeners(); | 77 void callMediaQueryListListeners(); |
| 79 | 78 |
| 80 bool hasScheduledItems() const; | 79 bool hasScheduledItems() const; |
| 81 | 80 |
| 82 RawPtrWillBeMember<Document> m_document; | 81 Member<Document> m_document; |
| 83 FrameRequestCallbackCollection m_callbackCollection; | 82 FrameRequestCallbackCollection m_callbackCollection; |
| 84 int m_suspendCount; | 83 int m_suspendCount; |
| 85 WillBeHeapVector<RefPtrWillBeMember<Event>> m_eventQueue; | 84 HeapVector<Member<Event>> m_eventQueue; |
| 86 WillBeHeapListHashSet<std::pair<RawPtrWillBeMember<const EventTarget>, const
StringImpl*>> m_perFrameEvents; | 85 HeapListHashSet<std::pair<Member<const EventTarget>, const StringImpl*>> m_p
erFrameEvents; |
| 87 using MediaQueryListListeners = WillBeHeapListHashSet<RefPtrWillBeMember<Med
iaQueryListListener>>; | 86 using MediaQueryListListeners = HeapListHashSet<Member<MediaQueryListListene
r>>; |
| 88 MediaQueryListListeners m_mediaQueryListListeners; | 87 MediaQueryListListeners m_mediaQueryListListeners; |
| 89 }; | 88 }; |
| 90 | 89 |
| 91 } // namespace blink | 90 } // namespace blink |
| 92 | 91 |
| 93 #endif // ScriptedAnimationController_h | 92 #endif // ScriptedAnimationController_h |
| OLD | NEW |