Index: third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h |
diff --git a/third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h b/third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h |
index 9896b0044f41f211f504e82b61cc604edec86a2f..4fa2a7f7b36424666bd0e4d3467708262232a26d 100644 |
--- a/third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h |
+++ b/third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h |
@@ -32,11 +32,13 @@ |
namespace blink { |
class Document; |
+class Element; |
class LayoutSVGResourceContainer; |
-class SubtreeLayoutScope; |
-class SVGSVGElement; |
class SVGElement; |
-class Element; |
+class SVGElementProxy; |
+class SVGElementProxySet; |
+class SVGSVGElement; |
+class SubtreeLayoutScope; |
class SVGDocumentExtensions |
: public GarbageCollectedFinalized<SVGDocumentExtensions> { |
@@ -85,13 +87,13 @@ class SVGDocumentExtensions |
private: |
Member<Document> m_document; |
- // For SVG 1.2 support this will need to be made more general. |
HeapHashSet<Member<SVGSVGElement>> m_timeContainers; |
using SVGElementSet = HeapHashSet<Member<SVGElement>>; |
SVGElementSet m_webAnimationsPendingSVGElements; |
HashMap<AtomicString, LayoutSVGResourceContainer*> m_resources; |
// Resources that are pending. |
HeapHashMap<AtomicString, Member<SVGPendingElements>> m_pendingResources; |
+ HeapHashMap<AtomicString, Member<SVGElementProxySet>> m_pendingProxies; |
// Resources that are pending and scheduled for removal. |
HeapHashMap<AtomicString, Member<SVGPendingElements>> |
m_pendingResourcesForRemoval; |
@@ -115,6 +117,8 @@ class SVGDocumentExtensions |
void clearHasPendingResourcesIfPossible(Element*); |
void removeElementFromPendingResources(Element*); |
SVGPendingElements* removePendingResource(const AtomicString& id); |
+ void attachPendingProxy(SVGElementProxy&); |
+ void invalidatePendingProxies(const AtomicString& id); |
void serviceAnimations(); |