Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0e3f9c7406374f46e0cf330b2ef7723b76f5245c
https://github.com/WebKit/WebKit/commit/0e3f9c7406374f46e0cf330b2ef7723b76f5245c
Author: Sammy Gill <[email protected]>
Date: 2026-07-27 (Mon, 27 Jul 2026)
Changed paths:
M Source/WebCore/layout/formattingContexts/grid/GridFormattingContext.cpp
Log Message:
-----------
[GFC] Use UnplacedGridItem::GridPosition when determining item position type.
https://bugs.webkit.org/show_bug.cgi?id=320385
rdar://problem/183345808
Reviewed by Alan Baradlay.
When constructing the list of unplaced grid items, GridFormattingContext
decided which placement bucket an item belongs to by inspecting the raw
computed style and requiring all four grid-{column,row}-{start,end}
values to be explicit before treating the item as non-auto-positioned.
That test is stricter than the spec's notion of a definite position. An
axis is definite when either of its edges references an explicit line, so
a placement like grid-column: 2 (explicit start, auto end) is definite
even though it is not "fully explicit". Such an item has a definite
position in both axes, but because it was not fully explicit it was
routed to definiteRowPositionedItems, which ignores the definite column
and auto-places the item in the column axis, landing it in the wrong
column.
Now that an UnplacedGridItem resolves and stores its position when it is
constructed, classify it from that resolved position instead: an item
with a definite position in both axes is non-auto-positioned, an item
with only a definite row is locked to that row, and everything else is
auto-positioned.
Canonical link: https://commits.webkit.org/318034@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications