Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: dc39a4f07c9267e9ba56ee36c927340cff5ae585
      
https://github.com/WebKit/WebKit/commit/dc39a4f07c9267e9ba56ee36c927340cff5ae585
  Author: Elika Etemad <[email protected]>
  Date:   2026-02-14 (Sat, 14 Feb 2026)

  Changed paths:
    M Source/WebCore/rendering/RenderBlock.cpp
    M Source/WebCore/rendering/RenderBlock.h
    M Source/WebCore/rendering/RenderBlockFlow.cpp
    M Source/WebCore/rendering/RenderBlockFlow.h
    M Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp
    M Source/WebCore/rendering/RenderFlexibleBox.cpp
    M Source/WebCore/rendering/RenderGrid.cpp
    M Source/WebCore/rendering/RenderTable.cpp
    M Source/WebCore/rendering/RenderTextControlSingleLine.cpp
    M Source/WebCore/rendering/svg/RenderSVGBlock.cpp
    M Source/WebCore/rendering/svg/RenderSVGBlock.h

  Log Message:
  -----------
  Split computeOverflow into separate in-flow and out-of-flow methods
https://bugs.webkit.org/show_bug.cgi?id=307884
rdar://170364335

Reviewed by Alan Baradlay.

In order to use the scrollable content area as the containing block for
absolute positioning, we need it to be computed before we lay out
absolutely positioned boxes, so split the overflow computation methods
for in-flow/out-of-flow boxes and call them before/after out-of-flow layout.

P.S. Because layout overflow bounds depend on transforms, also make sure we have
called updateDescendantTransformsAfterLayout() on the relevant boxes first --
which requires splitting it also into in-flow and out-of-flow methods.

* Source/WebCore/rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeInFlowOverflow):
(WebCore::RenderBlock::simplifiedLayout):
(WebCore::RenderBlock::updateInFlowDescendantTransformsAfterLayout):
(WebCore::RenderBlock::updateOutOfFlowDescendantTransformsAfterLayout):
(WebCore::RenderBlock::computeOverflow): Deleted.
(WebCore::RenderBlock::updateDescendantTransformsAfterLayout): Deleted.
* Source/WebCore/rendering/RenderBlock.h:
(WebCore::RenderBlock::computeInFlowOverflow):
(WebCore::RenderBlock::computeOverflow): Deleted.
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::computeInFlowOverflow):
(WebCore::RenderBlockFlow::computeOverflow): Deleted.
* Source/WebCore/rendering/RenderBlockFlow.h:
(WebCore::RenderBlockFlow::computeInFlowOverflow):
(WebCore::RenderBlockFlow::computeOverflow): Deleted.
* Source/WebCore/rendering/RenderDeprecatedFlexibleBox.cpp:
(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
(WebCore::RenderDeprecatedFlexibleBox::layoutSingleClampedFlexItem):
* Source/WebCore/rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock):
* Source/WebCore/rendering/RenderGrid.cpp:
(WebCore::RenderGrid::layoutGrid):
(WebCore::RenderGrid::layoutMasonry):
* Source/WebCore/rendering/RenderTable.cpp:
(WebCore::RenderTable::layout):
* Source/WebCore/rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::layout):
* Source/WebCore/rendering/svg/RenderSVGBlock.cpp:
(WebCore::RenderSVGBlock::computeInFlowOverflow):
(WebCore::RenderSVGBlock::computeOverflow): Deleted.
* Source/WebCore/rendering/svg/RenderSVGBlock.h:

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



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

Reply via email to