Index: Source/core/animation/css/CSSAnimations.h |
diff --git a/Source/core/animation/css/CSSAnimations.h b/Source/core/animation/css/CSSAnimations.h |
index 4ea29a78f5bab0486f48c0414a94c20bc1f9a1a2..4b7a680e3c41427bd430fd7794ef1289164933e4 100644 |
--- a/Source/core/animation/css/CSSAnimations.h |
+++ b/Source/core/animation/css/CSSAnimations.h |
@@ -32,7 +32,10 @@ |
#define CSSAnimations_h |
#include "core/animation/InertAnimation.h" |
+#include "core/animation/Interpolation.h" |
+#include "core/animation/css/CSSAnimationData.h" |
#include "core/animation/css/CSSAnimationUpdate.h" |
+#include "core/css/CSSKeyframesRule.h" |
#include "core/css/StylePropertySet.h" |
#include "core/dom/Document.h" |
#include "wtf/HashMap.h" |
@@ -44,7 +47,6 @@ class CSSTransitionData; |
class Element; |
class StylePropertyShorthand; |
class StyleResolver; |
-class StyleRuleKeyframes; |
class CSSAnimations final { |
WTF_MAKE_NONCOPYABLE(CSSAnimations); |
@@ -66,6 +68,20 @@ public: |
void trace(Visitor*); |
private: |
+ struct RunningAnimation { |
+ ALLOW_ONLY_INLINE_ALLOCATION(); |
+ public: |
+ void trace(Visitor* visitor) |
+ { |
+ visitor->trace(player); |
+ } |
+ |
+ RefPtrWillBeMember<AnimationPlayer> player; |
+ Timing specifiedTiming; |
+ RefPtrWillBeMember<StyleRuleKeyframes> styleRule; |
+ unsigned styleChangeCounter; |
esprehn
2015/01/29 04:23:19
constructor needs to set this to 0
shend
2015/01/30 00:03:10
Done.
|
+ }; |
+ |
struct RunningTransition { |
ALLOW_ONLY_INLINE_ALLOCATION(); |
public: |
@@ -81,7 +97,7 @@ private: |
RawPtrWillBeMember<const AnimatableValue> to; |
}; |
- using AnimationMap = WillBeHeapHashMap<AtomicString, RefPtrWillBeMember<AnimationPlayer>>; |
+ using AnimationMap = WillBeHeapHashMap<AtomicString, RunningAnimation>; |
AnimationMap m_animations; |
using TransitionMap = WillBeHeapHashMap<CSSPropertyID, RunningTransition>; |