Index: Source/core/animation/ElementAnimations.h |
diff --git a/Source/core/animation/ElementAnimations.h b/Source/core/animation/ElementAnimations.h |
index fc6b4827600b99effca611d166d2a9e7b0388d3f..b8054e1c38fd9d5be45ebbe608562ead2294985c 100644 |
--- a/Source/core/animation/ElementAnimations.h |
+++ b/Source/core/animation/ElementAnimations.h |
@@ -74,6 +74,11 @@ public: |
void updateBaseComputedStyle(const ComputedStyle*); |
void clearBaseComputedStyle(); |
+#if !ENABLE(OILPAN) |
+ void addEffect(KeyframeEffect* effect) { m_effects.add(effect); } |
+ void dispose(); |
+#endif |
+ |
DECLARE_TRACE(); |
private: |
@@ -85,6 +90,12 @@ private: |
bool m_animationStyleChange; |
RefPtr<ComputedStyle> m_baseComputedStyle; |
+#if !ENABLE(OILPAN) |
+ // TODO(oilpan): This is to avoid a reference cycle that keeps Elements |
+ // alive and won't be needed once the Node hierarchy becomes traceable. |
+ HeapHashSet<WeakMember<KeyframeEffect>> m_effects; |
+#endif |
+ |
// CSSAnimations and DeferredLegacyStyleInterpolation checks if a style change is due to animation. |
friend class CSSAnimations; |
friend class DeferredLegacyStyleInterpolation; |