Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge r220479 - [Repaint from Layout Removal] Move layer repaint rect…
…s into a map https://bugs.webkit.org/show_bug.cgi?id=175393 Reviewed by Zalan Bujtas. Move the two repaint rects held by RenderLayer into a RenderLayerModelObject -> RepaintLayoutRects hash map. RepaintLayoutRects is a new struct that holds both rects. Eventually more objects than just self painting layers will be caching repaint rects, so this takes a first step towards having a common cache for these repaint rects. In addition this change saves memory, since layers that aren't self-painting no longer have empty repaint rects taking up space in RenderLayer. * rendering/RenderBlockLineLayout.cpp: (WebCore::RenderBlockFlow::layoutRunsAndFloats): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::repaintRectIncludingNonCompositingDescendants): (WebCore::RenderLayer::computeRepaintRects): (WebCore::RenderLayer::clearRepaintRects): (WebCore::RenderLayer::updateLayerPositionsAfterScroll): (WebCore::RenderLayer::scrollTo): * rendering/RenderLayer.h: * rendering/RenderLayerModelObject.cpp: (WebCore::RepaintLayoutRects::RepaintLayoutRects): (WebCore::RenderLayerModelObject::willBeDestroyed): (WebCore::RenderLayerModelObject::destroyLayer): (WebCore::RenderLayerModelObject::styleDidChange): (WebCore::RenderLayerModelObject::hasRepaintLayoutRects): (WebCore::RenderLayerModelObject::setRepaintLayoutRects): (WebCore::RenderLayerModelObject::clearRepaintLayoutRects): (WebCore::RenderLayerModelObject::repaintLayoutRects): (WebCore::RenderLayerModelObject::computeRepaintLayoutRects): * rendering/RenderLayerModelObject.h: (WebCore::RepaintLayoutRects::RepaintLayoutRects):
- Loading branch information
1 parent
2974cd5
commit 4ab2fc4
Showing
6 changed files
with
126 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters