Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: b625ca0f27952dc40a77e264bbeafa44e11b4e23
      
https://github.com/WebKit/WebKit/commit/b625ca0f27952dc40a77e264bbeafa44e11b4e23
  Author: Alan Baradlay <[email protected]>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M Source/WebCore/rendering/RenderFlexLayout.cpp
    M Source/WebCore/rendering/RenderFlexLayout.h
    M Source/WebCore/rendering/RenderFlexibleBox.cpp
    M Source/WebCore/rendering/RenderFlexibleBox.h

  Log Message:
  -----------
  [cleanup] Drop RelayoutChildren from FlexLayout (carry it on FlexLayoutItem) 
and rename its layout entry points
https://bugs.webkit.org/show_bug.cgi?id=318643

Reviewed by Antti Koivisto.

FlexLayout threaded the render-tree RelayoutChildren flag through layout() and 
layoutFlexItems only to
hand it to RenderFlexibleBox's per-item layout, even though FlexLayout is meant 
to reach the render tree
only through the container. The flag is really a property of each item 
RenderFlexibleBox collects.

Carry it on FlexLayoutItem as shouldInvalidateChildContent, set in 
collectFlexItems from
relayoutChildren == RelayoutChildren::Yes, and read it in 
layoutFlexItemWithMainSize. FlexLayout no
longer mentions RelayoutChildren, and the multi-line-column re-resolve no 
longer passes
RelayoutChildren::No: that was already a no-op, because the 
!hasFlexItemCompletedLayout guard makes a
re-layout non-forcing regardless.

While here, rename for clarity, mirroring the LFC Layout::FlexLayout the legacy 
path converges on:
performFlexLayout becomes layout, and layoutFlexItemAfterMainSizing becomes 
layoutFlexItemWithMainSize
(the point is that the flexed main size is imposed on the item, not that it 
runs "after" a step). The
line-positioning lambda becomes computeFlexLineCrossPositions (it fills 
flexLinesCrossPositionList; the
used cross size, 9.6 #15, is resolved later in 
updateFlexContainerLogicalHeight), which also fixes a
comment that labeled it 9.6 ahead of the 9.5 main-axis step that necessarily 
precedes it.

No change in behavior.

* Source/WebCore/rendering/RenderFlexLayout.cpp:
* Source/WebCore/rendering/RenderFlexLayout.h:
* Source/WebCore/rendering/RenderFlexibleBox.cpp:
* Source/WebCore/rendering/RenderFlexibleBox.h:

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



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

Reply via email to