Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[macOS] Safari flashes a page background colored bar with top content…
… inset dimensions in footer when window resizing https://bugs.webkit.org/show_bug.cgi?id=274831 rdar://128940179 Reviewed by Simon Fraser. Previously, on a FrameView resize, RenderLayerCompositor was sizing its overhang area layer incorrectly since it did not account for the top content offset. This is incorrect because the layer itself was positioned vertically at the top content offset, so with the inflated size, we always had a page background colored bar hanging at the bottom of the frame, which was easily perceptible when snap resizing a Safari window, for example. This patch fixes said issue by introducing a reusable utility method RenderLayerCompositor::updateSizeAndPositionForOverhangAreaLayer() that is used both during layer creation and any later updates (such as when a frame view's size changes). We make sure to size the layer (and position it) correctly in this method, accounting for the top content offset. * Source/WebCore/rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::frameViewDidChangeSize): (WebCore::RenderLayerCompositor::updateSizeAndPositionForOverhangAreaLayer): (WebCore::RenderLayerCompositor::updateOverflowControlsLayers): * Source/WebCore/rendering/RenderLayerCompositor.h: Canonical link: https://commits.webkit.org/279562@main
- Loading branch information