[webkit-changes] [WebKit/WebKit] 071943: [macOS] Safari flashes a page background colored b...

Abrar Rahman Protyasha noreply at github.com
Thu May 30 22:31:00 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 071943e457d9e93f456b8a8ee24a016e0143cb1c
      https://github.com/WebKit/WebKit/commit/071943e457d9e93f456b8a8ee24a016e0143cb1c
  Author: Abrar Rahman Protyasha <a_protyasha at apple.com>
  Date:   2024-05-30 (Thu, 30 May 2024)

  Changed paths:
    M Source/WebCore/rendering/RenderLayerCompositor.cpp
    M Source/WebCore/rendering/RenderLayerCompositor.h

  Log Message:
  -----------
  [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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list