Chromium Code Reviews| Index: Source/core/rendering/RenderBox.cpp |
| diff --git a/Source/core/rendering/RenderBox.cpp b/Source/core/rendering/RenderBox.cpp |
| index 27493a3937ab0ba065ba04fb60ebe4dfb9c73ffa..cdd213e02dcf7b937e36df0debaece7edacee76b 100644 |
| --- a/Source/core/rendering/RenderBox.cpp |
| +++ b/Source/core/rendering/RenderBox.cpp |
| @@ -1963,8 +1963,12 @@ void RenderBox::deleteLineBoxWrapper() |
| LayoutRect RenderBox::clippedOverflowRectForPaintInvalidation(const RenderLayerModelObject* paintInvalidationContainer, const PaintInvalidationState* paintInvalidationState) const |
| { |
| - if (style()->visibility() != VISIBLE && enclosingLayer()->subtreeIsInvisible()) |
| - return LayoutRect(); |
| + if (style()->visibility() != VISIBLE) { |
| + RenderLayer* layer = enclosingLayer(); |
| + layer->updateDescendantDependentFlags(); |
|
skobes
2014/08/08 20:43:18
Why is this method, which doesn't seem like it sho
abarth-chromium
2014/08/08 21:24:39
That's a good question. The answer is slightly in
skobes
2014/08/08 21:45:01
Got it... I'm fine with the approach here as long
|
| + if (layer->subtreeIsInvisible()) |
| + return LayoutRect(); |
| + } |
| LayoutRect r = visualOverflowRect(); |
| mapRectToPaintInvalidationBacking(paintInvalidationContainer, r, false /*fixed*/, paintInvalidationState); |