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

Side by Side Diff: Source/WebCore/rendering/svg/RenderSVGPath.cpp

Issue 7532014: Merge 91915 - 2011-07-28 Rob Buis <rbuis@rim.com> (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/835/
Patch Set: Created 9 years, 4 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
« no previous file with comments | « Source/WebCore/ChangeLog ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 RenderSVGModelObject::setNeedsBoundariesUpdate(); 148 RenderSVGModelObject::setNeedsBoundariesUpdate();
149 149
150 repainter.repaintAfterLayout(); 150 repainter.repaintAfterLayout();
151 setNeedsLayout(false); 151 setNeedsLayout(false);
152 } 152 }
153 153
154 bool RenderSVGPath::shouldStrokeZeroLengthSubpath() const 154 bool RenderSVGPath::shouldStrokeZeroLengthSubpath() const
155 { 155 {
156 // Spec(11.4): Any zero length subpath shall not be stroked if the ‘stroke-l inecap’ property has a value of butt 156 // Spec(11.4): Any zero length subpath shall not be stroked if the ‘stroke-l inecap’ property has a value of butt
157 // but shall be stroked if the ‘stroke-linecap’ property has a value of roun d or square 157 // but shall be stroked if the ‘stroke-linecap’ property has a value of roun d or square
158 return style()->svgStyle()->capStyle() != ButtCap && !m_fillBoundingBox.widt h() && !m_fillBoundingBox.height(); 158 return style()->svgStyle()->hasStroke() && style()->svgStyle()->capStyle() ! = ButtCap && !m_fillBoundingBox.width() && !m_fillBoundingBox.height();
159 } 159 }
160 160
161 FloatRect RenderSVGPath::zeroLengthSubpathRect() const 161 FloatRect RenderSVGPath::zeroLengthSubpathRect() const
162 { 162 {
163 SVGElement* svgElement = static_cast<SVGElement*>(node()); 163 SVGElement* svgElement = static_cast<SVGElement*>(node());
164 float strokeWidth = style()->svgStyle()->strokeWidth().value(svgElement); 164 float strokeWidth = style()->svgStyle()->strokeWidth().value(svgElement);
165 return FloatRect(m_fillBoundingBox.x() - strokeWidth / 2, m_fillBoundingBox. y() - strokeWidth / 2, strokeWidth, strokeWidth); 165 return FloatRect(m_fillBoundingBox.x() - strokeWidth / 2, m_fillBoundingBox. y() - strokeWidth / 2, strokeWidth, strokeWidth);
166 } 166 }
167 167
168 void RenderSVGPath::setupSquareCapPath(Path*& usePath, int& applyMode) 168 void RenderSVGPath::setupSquareCapPath(Path*& usePath, int& applyMode)
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
384 } 384 }
385 385
386 // Cache smallest possible repaint rectangle 386 // Cache smallest possible repaint rectangle
387 m_repaintBoundingBox = m_strokeAndMarkerBoundingBox; 387 m_repaintBoundingBox = m_strokeAndMarkerBoundingBox;
388 SVGRenderSupport::intersectRepaintRectWithResources(this, m_repaintBoundingB ox); 388 SVGRenderSupport::intersectRepaintRectWithResources(this, m_repaintBoundingB ox);
389 } 389 }
390 390
391 } 391 }
392 392
393 #endif // ENABLE(SVG) 393 #endif // ENABLE(SVG)
OLDNEW
« no previous file with comments | « Source/WebCore/ChangeLog ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698