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

Unified Diff: third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h

Issue 1420553004: SVG Web Animations: Add compositing pipeline for SVGInterpolationTypes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@_svgValueInterpolationType
Patch Set: Review changes Created 5 years, 2 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: 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 f7168c6f4fb87c6ce45f8b2fb67e5206de4bd1b7..561d5ca1f34df9730e961ea4f5971c168a4f32b8 100644
--- a/third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h
+++ b/third_party/WebKit/Source/core/svg/SVGDocumentExtensions.h
@@ -35,6 +35,7 @@ class Document;
class LayoutSVGResourceContainer;
class SubtreeLayoutScope;
class SVGSVGElement;
+class SVGElement;
class Element;
class SVGDocumentExtensions : public NoBaseWillBeGarbageCollectedFinalized<SVGDocumentExtensions> {
@@ -47,6 +48,9 @@ public:
void addTimeContainer(SVGSVGElement*);
void removeTimeContainer(SVGSVGElement*);
+ // Records the SVG element as having a Web Animation on an SVG attribute that needs applying.
+ void addPendingWebAnimatedSVGElement(SVGElement&);
+
void addResource(const AtomicString& id, LayoutSVGResourceContainer*);
void removeResource(const AtomicString& id);
LayoutSVGResourceContainer* resourceById(const AtomicString& id) const;
@@ -80,6 +84,8 @@ public:
private:
RawPtrWillBeMember<Document> m_document;
WillBeHeapHashSet<RawPtrWillBeMember<SVGSVGElement>> m_timeContainers; // For SVG 1.2 support this will need to be made more general.
+ using SVGElementSet = WillBeHeapHashSet<RawPtrWillBeMember<SVGElement>>;
fs 2015/10/21 11:24:29 In the time window between applyEffects() and serv
alancutter (OOO until 2018) 2015/10/26 04:13:45 In theory SVGElements will be added and removed fr
+ SVGElementSet m_webAnimatedSVGElements;
HashMap<AtomicString, LayoutSVGResourceContainer*> m_resources;
WillBeHeapHashMap<AtomicString, OwnPtrWillBeMember<SVGPendingElements>> m_pendingResources; // Resources that are pending.
WillBeHeapHashMap<AtomicString, OwnPtrWillBeMember<SVGPendingElements>> m_pendingResourcesForRemoval; // Resources that are pending and scheduled for removal.

Powered by Google App Engine
This is Rietveld 408576698