Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(415)

Unified Diff: Source/core/css/PropertySetCSSStyleDeclaration.h

Issue 814083003: Update animation when changes in animation keyframes are detected. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebase and address comments Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/core/css/PropertySetCSSStyleDeclaration.h
diff --git a/Source/core/css/PropertySetCSSStyleDeclaration.h b/Source/core/css/PropertySetCSSStyleDeclaration.h
index e29ea1a49651890eca705dd1dc7f22af4190a980..77a81c4597ae1d1c2459428e764a768dffa9a7c1 100644
--- a/Source/core/css/PropertySetCSSStyleDeclaration.h
+++ b/Source/core/css/PropertySetCSSStyleDeclaration.h
@@ -26,6 +26,7 @@
#ifndef PropertySetCSSStyleDeclaration_h
#define PropertySetCSSStyleDeclaration_h
+#include "core/css/CSSKeyframeRule.h"
#include "core/css/CSSStyleDeclaration.h"
#include "wtf/HashMap.h"
#include "wtf/OwnPtr.h"
@@ -149,6 +150,41 @@ private:
RawPtrWillBeMember<Element> m_parentElement;
};
+class KeyframeStyleRuleCSSStyleDeclaration final : public PropertySetCSSStyleDeclaration {
esprehn 2015/01/30 02:50:28 It'd be nice to put this and the impl in new .h an
shend 2015/02/01 23:49:14 Done.
+public:
+ static PassRefPtrWillBeRawPtr<KeyframeStyleRuleCSSStyleDeclaration> create(MutableStylePropertySet& propertySet, CSSKeyframeRule* parentRule)
+ {
+ return adoptRefWillBeNoop(new KeyframeStyleRuleCSSStyleDeclaration(propertySet, parentRule));
+ }
+
+#if !ENABLE(OILPAN)
+ void clearParentRule() { m_parentRule = nullptr; }
+
+ virtual void ref() override;
+ virtual void deref() override;
+#endif
+
+ void reattach(MutableStylePropertySet&);
+
+ virtual void trace(Visitor*) override;
+
+private:
+ KeyframeStyleRuleCSSStyleDeclaration(MutableStylePropertySet&, CSSKeyframeRule*);
+ virtual ~KeyframeStyleRuleCSSStyleDeclaration();
+
+ virtual CSSStyleSheet* parentStyleSheet() const override;
+
+ virtual CSSRule* parentRule() const override { return m_parentRule; }
+
+ virtual void willMutate() override;
+ virtual void didMutate(MutationType) override;
+
+#if !ENABLE(OILPAN)
+ unsigned m_refCount;
+#endif
+ RawPtrWillBeMember<CSSKeyframeRule> m_parentRule;
+};
+
} // namespace blink
#endif

Powered by Google App Engine
This is Rietveld 408576698