Chromium Code Reviews| Index: third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp |
| diff --git a/third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp b/third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp |
| index 7e6a83c8d26259c90bb7bb975d7e491cda094184..6cf4d08fb880f6175909b08318e6f86c91c4cdf2 100644 |
| --- a/third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp |
| +++ b/third_party/WebKit/Source/core/layout/svg/LayoutSVGRoot.cpp |
| @@ -151,7 +151,11 @@ void LayoutSVGRoot::layout() |
| SVGSVGElement* svg = toSVGSVGElement(node()); |
| ASSERT(svg); |
| m_isLayoutSizeChanged = needsLayout || (svg->hasRelativeLengths() && oldSize != size()); |
| - SVGLayoutSupport::layoutChildren(this, needsLayout || SVGLayoutSupport::filtersForceContainerLayout(this)); |
| + // If any of this root's children need to be laid out, and a filter is |
| + // applied to it, we need to issue paint invalidations for all descendants. |
| + bool forceLayoutOfChildren = needsLayout |
|
pdr.
2016/04/19 18:14:46
This is a little confusing because the 2nd argumen
|
| + || (normalChildNeedsLayout() && SVGLayoutSupport::hasFilterResource(*this)); |
| + SVGLayoutSupport::layoutChildren(this, forceLayoutOfChildren); |
| if (m_needsBoundariesOrTransformUpdate) { |
| updateCachedBoundaries(); |