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

Side by Side Diff: third_party/WebKit/Source/core/layout/svg/LayoutSVGShape.cpp

Issue 1813383002: Move all fast-path paint invalidation mapping into PaintInvalidationState (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Disable fast-path/slow-path comparison because of saturated operations of LayoutUnit Created 4 years, 8 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
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 277 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 m_paintInvalidationBoundingBox = strokeBoundingBox(); 288 m_paintInvalidationBoundingBox = strokeBoundingBox();
289 SVGLayoutSupport::intersectPaintInvalidationRectWithResources(this, m_paintI nvalidationBoundingBox); 289 SVGLayoutSupport::intersectPaintInvalidationRectWithResources(this, m_paintI nvalidationBoundingBox);
290 } 290 }
291 291
292 float LayoutSVGShape::strokeWidth() const 292 float LayoutSVGShape::strokeWidth() const
293 { 293 {
294 SVGLengthContext lengthContext(element()); 294 SVGLengthContext lengthContext(element());
295 return lengthContext.valueForLength(style()->svgStyle().strokeWidth()); 295 return lengthContext.valueForLength(style()->svgStyle().strokeWidth());
296 } 296 }
297 297
298 LayoutRect LayoutSVGShape::clippedOverflowRectForPaintInvalidation(
299 const LayoutBoxModelObject* paintInvalidationContainer,
300 const PaintInvalidationState* paintInvalidationState) const
301 {
302 const float strokeWidthForHairlinePadding = style()->svgStyle().hasStroke() ? strokeWidth() : 0;
303 return SVGLayoutSupport::clippedOverflowRectForPaintInvalidation(*this,
304 paintInvalidationContainer, paintInvalidationState, strokeWidthForHairli nePadding);
305 }
306
307 LayoutSVGShapeRareData& LayoutSVGShape::ensureRareData() const 298 LayoutSVGShapeRareData& LayoutSVGShape::ensureRareData() const
308 { 299 {
309 if (!m_rareData) 300 if (!m_rareData)
310 m_rareData = adoptPtr(new LayoutSVGShapeRareData()); 301 m_rareData = adoptPtr(new LayoutSVGShapeRareData());
311 return *m_rareData.get(); 302 return *m_rareData.get();
312 } 303 }
313 304
314 } // namespace blink 305 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698