Simplify bounds computation for the RenderView's layer
https://bugs.webkit.org/show_bug.cgi?id=102597
Reviewed by Anders Carlsson.
Source/WebCore:
Computing the bounds of the main layer (that of the RenderView) used to do
a full RenderLayer walk, taking the union of the bounds of all the sublayers,
which is very expensive on large pages.
For the RenderView we can avoid that entirely and just use the RenderView's
document rect. Since page scaling happens as a transform on this layer,
we want the unscaled document rect.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateLayerBounds):
LayoutTests:
Progressions as a result of this change:
* compositing/layer-creation/fixed-position-out-of-view-expected.txt: The height
is now the page height, since the page is scrollable.
* compositing/tiling/tile-cache-zoomed-expected.txt: The main layer now is not
affected by the page scale transform.
* platform/mac/compositing/tiling/tile-cache-zoomed-expected.txt: Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@135059 268f45cc-cd09-0410-ab3c-d52691b4dbfc
6 files changed