Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 3e5698d4a039fc548710cf48eefcc66fe41d161f
https://github.com/WebKit/WebKit/commit/3e5698d4a039fc548710cf48eefcc66fe41d161f
Author: Alan Baradlay <[email protected]>
Date: 2026-07-15 (Wed, 15 Jul 2026)
Changed paths:
M Source/WebCore/rendering/RenderFlexLayout.cpp
M Source/WebCore/rendering/RenderFlexibleBox.cpp
M Source/WebCore/rendering/RenderFlexibleBox.h
Log Message:
-----------
[cleanup] Resolve the flex container's logical height in RenderFlexibleBox
instead of FlexLayout
https://bugs.webkit.org/show_bug.cgi?id=318612
Reviewed by Antti Koivisto.
FlexLayout determined the flex container's used cross size itself: it grew the
container's logical
height line by line during content sizing (row flow), then at the "determine
the used cross size"
step applied the line-if-empty floor, added the inter-line gaps, and called
updateLogicalHeight.
That last step is the container resolving its own border-box height (specified
vs content, min/max,
box-sizing), which is RenderBox's job rather than the item-layout algorithm's.
Accumulate the row-flow content extent into a local instead of writing the
container, and hand it
to a new RenderFlexibleBox::updateLogicalHeightForFlexContent that applies the
floor, adds the
inter-line gaps, and calls updateLogicalHeight. FlexLayout no longer writes the
container's height
at the cross-size step; it reads crossAxisContentExtent() for the following
alignment as before.
Column flow's logical height is its main size, which is still set while placing
the items (column
reverse needs it finalized mid-placement to position from the end), so the new
method seeds the
height only for row flow and leaves column flow's as placed.
No change in behavior: the same content extent, floor, gaps and height
resolution run in the same
order; only the ownership of writing the container's height moved.
* Source/WebCore/rendering/RenderFlexLayout.cpp:
* Source/WebCore/rendering/RenderFlexibleBox.cpp:
* Source/WebCore/rendering/RenderFlexibleBox.h:
Canonical link: https://commits.webkit.org/317286@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications