Chromium Code Reviews| Index: sky/engine/core/rendering/RenderView.cpp |
| diff --git a/sky/engine/core/rendering/RenderView.cpp b/sky/engine/core/rendering/RenderView.cpp |
| index beb07ac23d3d953a508e91643f8a6b864f345430..44a01efe65b1f1a8916082d4a1254132ede607a1 100644 |
| --- a/sky/engine/core/rendering/RenderView.cpp |
| +++ b/sky/engine/core/rendering/RenderView.cpp |
| @@ -299,6 +299,11 @@ void RenderView::invalidateTreeIfNeeded(const PaintInvalidationState& paintInval |
| const RenderLayerModelObject* paintInvalidationContainer = &paintInvalidationState.paintInvalidationContainer(); |
| mapRectToPaintInvalidationBacking(paintInvalidationContainer, dirtyRect, &paintInvalidationState); |
| invalidatePaintUsingContainer(paintInvalidationContainer, dirtyRect, InvalidationFull); |
| + |
| + // Also need to handle iframes, since they have a separate view outside |
| + // the hierarchy. |
| + for (auto& iframe: m_iframes) |
| + iframe->invalidateWidgetBounds(); |
|
esprehn
2014/11/17 19:04:32
We don't always repaint if you move, for example i
|
| } |
| RenderBlock::invalidateTreeIfNeeded(paintInvalidationState); |
| } |
| @@ -754,4 +759,14 @@ double RenderView::layoutViewportHeight() const |
| return viewHeight(IncludeScrollbars); |
| } |
| +void RenderView::addIFrame(RenderIFrame* iframe) |
| +{ |
| + m_iframes.add(iframe); |
| +} |
| + |
| +void RenderView::removeIFrame(RenderIFrame* iframe) |
| +{ |
| + m_iframes.remove(iframe); |
| +} |
| + |
| } // namespace blink |