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

Side by Side Diff: Source/core/rendering/svg/RenderSVGShape.cpp

Issue 577583002: Drop RenderSVGResource::{fill,stroke}PaintingResource shims (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 3 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2004, 2005, 2008 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005, 2008 Rob Buis <buis@kde.org>
4 * Copyright (C) 2005, 2007 Eric Seidel <eric@webkit.org> 4 * Copyright (C) 2005, 2007 Eric Seidel <eric@webkit.org>
5 * Copyright (C) 2009 Google, Inc. 5 * Copyright (C) 2009 Google, Inc.
6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> 6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org>
7 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 7 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
8 * Copyright (C) 2009 Jeff Schiller <codedread@gmail.com> 8 * Copyright (C) 2009 Jeff Schiller <codedread@gmail.com>
9 * Copyright (C) 2011 Renata Hodovan <reni@webkit.org> 9 * Copyright (C) 2011 Renata Hodovan <reni@webkit.org>
10 * Copyright (C) 2011 University of Szeged 10 * Copyright (C) 2011 University of Szeged
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 { 106 {
107 return path().contains(point, fillRule); 107 return path().contains(point, fillRule);
108 } 108 }
109 109
110 bool RenderSVGShape::fillContains(const FloatPoint& point, bool requiresFill, co nst WindRule fillRule) 110 bool RenderSVGShape::fillContains(const FloatPoint& point, bool requiresFill, co nst WindRule fillRule)
111 { 111 {
112 if (!m_fillBoundingBox.contains(point)) 112 if (!m_fillBoundingBox.contains(point))
113 return false; 113 return false;
114 114
115 bool hasFallback; 115 bool hasFallback;
116 if (requiresFill && !RenderSVGResource::fillPaintingResource(this, style(), hasFallback)) 116 if (requiresFill && !RenderSVGResource::requestPaintingResource(ApplyToFillM ode, this, style(), hasFallback))
117 return false; 117 return false;
118 118
119 return shapeDependentFillContains(point, fillRule); 119 return shapeDependentFillContains(point, fillRule);
120 } 120 }
121 121
122 bool RenderSVGShape::strokeContains(const FloatPoint& point, bool requiresStroke ) 122 bool RenderSVGShape::strokeContains(const FloatPoint& point, bool requiresStroke )
123 { 123 {
124 if (!strokeBoundingBox().contains(point)) 124 if (!strokeBoundingBox().contains(point))
125 return false; 125 return false;
126 126
127 bool hasFallback; 127 bool hasFallback;
128 if (requiresStroke && !RenderSVGResource::strokePaintingResource(this, style (), hasFallback)) 128 if (requiresStroke && !RenderSVGResource::requestPaintingResource(ApplyToStr okeMode, this, style(), hasFallback))
129 return false; 129 return false;
130 130
131 return shapeDependentStrokeContains(point); 131 return shapeDependentStrokeContains(point);
132 } 132 }
133 133
134 void RenderSVGShape::layout() 134 void RenderSVGShape::layout()
135 { 135 {
136 bool updateCachedBoundariesInParents = false; 136 bool updateCachedBoundariesInParents = false;
137 137
138 if (m_needsShapeUpdate || m_needsBoundariesUpdate) { 138 if (m_needsShapeUpdate || m_needsBoundariesUpdate) {
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 SVGResources* resources = SVGResourcesCache::cachedResourcesForRenderObject( this); 196 SVGResources* resources = SVGResourcesCache::cachedResourcesForRenderObject( this);
197 if (!resources) 197 if (!resources)
198 return false; 198 return false;
199 199
200 return resources->markerStart() || resources->markerMid() || resources->mark erEnd(); 200 return resources->markerStart() || resources->markerMid() || resources->mark erEnd();
201 } 201 }
202 202
203 void RenderSVGShape::fillShape(RenderStyle* style, GraphicsContext* context) 203 void RenderSVGShape::fillShape(RenderStyle* style, GraphicsContext* context)
204 { 204 {
205 bool hasFallback; 205 bool hasFallback;
206 if (RenderSVGResource* fillPaintingResource = RenderSVGResource::fillPaintin gResource(this, style, hasFallback)) { 206 if (RenderSVGResource* fillPaintingResource = RenderSVGResource::requestPain tingResource(ApplyToFillMode, this, style, hasFallback)) {
207 if (fillPaintingResource->applyResource(this, style, context, ApplyToFil lMode)) { 207 if (fillPaintingResource->applyResource(this, style, context, ApplyToFil lMode)) {
208 fillShape(context); 208 fillShape(context);
209 fillPaintingResource->postApplyResource(this, context); 209 fillPaintingResource->postApplyResource(this, context);
210 } else if (hasFallback) { 210 } else if (hasFallback) {
211 RenderSVGResourceSolidColor* fallbackResource = RenderSVGResource::s haredSolidPaintingResource(); 211 RenderSVGResourceSolidColor* fallbackResource = RenderSVGResource::s haredSolidPaintingResource();
212 if (fallbackResource->applyResource(this, style, context, ApplyToFil lMode)) { 212 if (fallbackResource->applyResource(this, style, context, ApplyToFil lMode)) {
213 fillShape(context); 213 fillShape(context);
214 fallbackResource->postApplyResource(this, context); 214 fallbackResource->postApplyResource(this, context);
215 } 215 }
216 } 216 }
217 } 217 }
218 } 218 }
219 219
220 void RenderSVGShape::strokeShape(RenderStyle* style, GraphicsContext* context) 220 void RenderSVGShape::strokeShape(RenderStyle* style, GraphicsContext* context)
221 { 221 {
222 bool hasFallback; 222 bool hasFallback;
223 if (RenderSVGResource* strokePaintingResource = RenderSVGResource::strokePai ntingResource(this, style, hasFallback)) { 223 if (RenderSVGResource* strokePaintingResource = RenderSVGResource::requestPa intingResource(ApplyToStrokeMode, this, style, hasFallback)) {
224 if (strokePaintingResource->applyResource(this, style, context, ApplyToS trokeMode)) { 224 if (strokePaintingResource->applyResource(this, style, context, ApplyToS trokeMode)) {
225 strokeShape(context); 225 strokeShape(context);
226 strokePaintingResource->postApplyResource(this, context); 226 strokePaintingResource->postApplyResource(this, context);
227 } else if (hasFallback) { 227 } else if (hasFallback) {
228 RenderSVGResourceSolidColor* fallbackResource = RenderSVGResource::s haredSolidPaintingResource(); 228 RenderSVGResourceSolidColor* fallbackResource = RenderSVGResource::s haredSolidPaintingResource();
229 if (fallbackResource->applyResource(this, style, context, ApplyToStr okeMode)) { 229 if (fallbackResource->applyResource(this, style, context, ApplyToStr okeMode)) {
230 strokeShape(context); 230 strokeShape(context);
231 fallbackResource->postApplyResource(this, context); 231 fallbackResource->postApplyResource(this, context);
232 } 232 }
233 } 233 }
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
462 ASSERT(resources); 462 ASSERT(resources);
463 463
464 RenderSVGResourceMarker* markerStart = resources->markerStart(); 464 RenderSVGResourceMarker* markerStart = resources->markerStart();
465 465
466 SVGMarkerData markerData(m_markerPositions, markerStart ? markerStart->orien tType() == SVGMarkerOrientAutoStartReverse : false); 466 SVGMarkerData markerData(m_markerPositions, markerStart ? markerStart->orien tType() == SVGMarkerOrientAutoStartReverse : false);
467 m_path->apply(&markerData, SVGMarkerData::updateFromPathElement); 467 m_path->apply(&markerData, SVGMarkerData::updateFromPathElement);
468 markerData.pathIsDone(); 468 markerData.pathIsDone();
469 } 469 }
470 470
471 } 471 }
OLDNEW
« no previous file with comments | « Source/core/rendering/svg/RenderSVGResource.h ('k') | Source/core/rendering/svg/SVGInlineTextBox.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698