Index: Source/core/svg/SVGElement.h |
diff --git a/Source/core/svg/SVGElement.h b/Source/core/svg/SVGElement.h |
index 741a43ec220f48897878eb8374b549cddfe4fe1d..e91f7e3eb7840125cfd9342f6a154bf4944afae6 100644 |
--- a/Source/core/svg/SVGElement.h |
+++ b/Source/core/svg/SVGElement.h |
@@ -155,6 +155,27 @@ public: |
bool inUseShadowTree() const; |
+ class InstanceInvalidationGuard { |
pdr.
2014/05/05 21:00:15
I would have left this as InvalidationGuard since
|
+ WTF_MAKE_NONCOPYABLE(InstanceInvalidationGuard); |
+ public: |
+ InstanceInvalidationGuard(SVGElement* element) : m_element(element) { } |
+ ~InstanceInvalidationGuard() { SVGElement::invalidateAllInstancesOfElement(m_element); } |
+ private: |
+ SVGElement* m_element; |
+ }; |
+ |
+ class InstanceUpdateBlocker { |
+ WTF_MAKE_NONCOPYABLE(InstanceUpdateBlocker); |
+ public: |
+ InstanceUpdateBlocker(SVGElement* targetElement); |
+ ~InstanceUpdateBlocker(); |
+ |
+ private: |
+ SVGElement* m_targetElement; |
+ }; |
+ |
+ static void invalidateAllInstancesOfElement(SVGElement*); |
+ |
protected: |
SVGElement(const QualifiedName&, Document&, ConstructionType = CreateSVGElement); |