| Index: Source/core/rendering/RenderObject.cpp
|
| diff --git a/Source/core/rendering/RenderObject.cpp b/Source/core/rendering/RenderObject.cpp
|
| index d6f6ef8d07cb5d2af2a7100f2890331458520219..47ccf7637b67c04b6aa0e45c46a30640622b85af 100644
|
| --- a/Source/core/rendering/RenderObject.cpp
|
| +++ b/Source/core/rendering/RenderObject.cpp
|
| @@ -2071,9 +2071,9 @@ void RenderObject::setStyle(PassRefPtr<RenderStyle> style)
|
| if (updatedDiff.needsRepaint()) {
|
| // Repaint with the new style, e.g., for example if we go from not having
|
| // an outline to having an outline.
|
| - if (needsLayout())
|
| + if (RuntimeEnabledFeatures::repaintAfterLayoutEnabled() && needsLayout())
|
| setShouldDoFullRepaintAfterLayout(true);
|
| - else
|
| + else if (!selfNeedsLayout())
|
| repaint();
|
| }
|
| }
|
| @@ -2112,9 +2112,9 @@ void RenderObject::styleWillChange(StyleDifference diff, const RenderStyle& newS
|
| }
|
|
|
| if (m_parent && diff.needsRepaintObject()) {
|
| - if (diff.needsLayout() || needsLayout())
|
| + if (RuntimeEnabledFeatures::repaintAfterLayoutEnabled() && (diff.needsLayout() || needsLayout()))
|
| setShouldDoFullRepaintAfterLayout(true);
|
| - else
|
| + else if (!diff.needsFullLayout() && !selfNeedsLayout())
|
| repaint();
|
| }
|
|
|
|
|