Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3a9fba1a0f45a422ca23ce9f157a576e938925ed
      
https://github.com/WebKit/WebKit/commit/3a9fba1a0f45a422ca23ce9f157a576e938925ed
  Author: Simon Fraser <simon.fra...@apple.com>
  Date:   2023-05-05 (Fri, 05 May 2023)

  Changed paths:
    A LayoutTests/fast/layers/scroll-dimentions-dirty-assertion-expected.txt
    A LayoutTests/fast/layers/scroll-dimentions-dirty-assertion.html
    M Source/WebCore/rendering/RenderLayer.cpp
    M Source/WebCore/rendering/RenderLayer.h
    M Source/WebCore/rendering/RenderLayerCompositor.cpp
    M Source/WebCore/rendering/RenderLayerCompositor.h
    M Source/WebCore/rendering/RenderLayerScrollableArea.cpp
    M Source/WebCore/rendering/RenderLayerScrollableArea.h

  Log Message:
  -----------
  REGRESSION(263286@main): [ Debug ] ASSERTION FAILED: !m_scrollDimensionsDirty
https://bugs.webkit.org/show_bug.cgi?id=256177
rdar://108753838

Reviewed by Alan Baradlay.

263286@main made us call computeHasCompositedScrollableOverflow() in more 
cases; doing this from
`RenderLayer::styleChanged()` was already wrong, because layout is not 
up-to-date then, so asking
questions about overflow geometry is not valid.

Fix by passing LayoutUpToDate; if No, the only thing we can do is to consult 
the style to see
if it prevents overflow scrolling.

In order to not regress 225752@main, we need to eagerly recompute 
layer.hasCompositedScrollableOverflow()
in RenderLayerCompositor::requiresCompositingForOverflowScrolling().

* LayoutTests/fast/layers/scroll-dimentions-dirty-assertion.html: Added.
* LayoutTests/fast/layers/scroll-dimentions-dirty-assertion-expected.txt: Added.
* Source/WebCore/rendering/RenderLayer.cpp:
(WebCore::RenderLayer::calculateClipRects const):
* Source/WebCore/rendering/RenderLayer.h:
* Source/WebCore/rendering/RenderLayerCompositor.h:
* Source/WebCore/rendering/RenderLayerScrollableArea.cpp:
(WebCore::RenderLayerScrollableArea::computeScrollDimensions):
(WebCore::RenderLayerScrollableArea::computeHasCompositedScrollableOverflow):
* Source/WebCore/rendering/RenderLayerScrollableArea.h:

Canonical link: https://commits.webkit.org/263722@main


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to