summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/page/animation/AnimationControllerPrivate.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/page/animation/AnimationControllerPrivate.h')
-rw-r--r--Source/WebCore/page/animation/AnimationControllerPrivate.h27
1 files changed, 16 insertions, 11 deletions
diff --git a/Source/WebCore/page/animation/AnimationControllerPrivate.h b/Source/WebCore/page/animation/AnimationControllerPrivate.h
index 186dd7d..1146eba 100644
--- a/Source/WebCore/page/animation/AnimationControllerPrivate.h
+++ b/Source/WebCore/page/animation/AnimationControllerPrivate.h
@@ -33,6 +33,7 @@
#include "PlatformString.h"
#include "Timer.h"
#include <wtf/HashMap.h>
+#include <wtf/HashSet.h>
#include <wtf/PassRefPtr.h>
#include <wtf/RefPtr.h>
#include <wtf/Vector.h>
@@ -48,6 +49,7 @@ class Frame;
class Node;
class RenderObject;
class RenderStyle;
+class WebKitAnimationList;
class AnimationControllerPrivate {
WTF_MAKE_NONCOPYABLE(AnimationControllerPrivate); WTF_MAKE_FAST_ALLOCATED;
@@ -87,11 +89,15 @@ public:
void endAnimationUpdate();
void receivedStartTimeResponse(double);
- void addToStyleAvailableWaitList(AnimationBase*);
- void removeFromStyleAvailableWaitList(AnimationBase*);
-
- void addToStartTimeResponseWaitList(AnimationBase*, bool willGetResponse);
- void removeFromStartTimeResponseWaitList(AnimationBase*);
+ void addToAnimationsWaitingForStyle(AnimationBase*);
+ void removeFromAnimationsWaitingForStyle(AnimationBase*);
+
+ void addToAnimationsWaitingForStartTimeResponse(AnimationBase*, bool willGetResponse);
+ void removeFromAnimationsWaitingForStartTimeResponse(AnimationBase*);
+
+ void animationWillBeRemoved(AnimationBase*);
+
+ PassRefPtr<WebKitAnimationList> animationsForRenderer(RenderObject*) const;
private:
void animationTimerFired(Timer<AnimationControllerPrivate>*);
@@ -119,12 +125,11 @@ private:
Vector<RefPtr<Node> > m_nodeChangesToDispatch;
double m_beginAnimationUpdateTime;
- AnimationBase* m_styleAvailableWaiters;
- AnimationBase* m_lastStyleAvailableWaiter;
-
- AnimationBase* m_startTimeResponseWaiters;
- AnimationBase* m_lastStartTimeResponseWaiter;
- bool m_waitingForStartTimeResponse;
+
+ typedef HashSet<RefPtr<AnimationBase> > WaitingAnimationsSet;
+ WaitingAnimationsSet m_animationsWaitingForStyle;
+ WaitingAnimationsSet m_animationsWaitingForStartTimeResponse;
+ bool m_waitingForAsyncStartNotification;
};
} // namespace WebCore