Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0c5ae4f07adc83be7ce540665d2a0d68ece80ebf
      
https://github.com/WebKit/WebKit/commit/0c5ae4f07adc83be7ce540665d2a0d68ece80ebf
  Author: Yulun Wu <[email protected]>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A 
LayoutTests/fast/css-grid-layout/grid-item-min-contribution-fill-available-expected.txt
    A 
LayoutTests/fast/css-grid-layout/grid-item-min-contribution-fill-available.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-behaves-as-auto-001-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-behaves-as-auto-001.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-fit-content-001-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-fit-content-001.html
    M Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp

  Log Message:
  -----------
  [Grid] Grid items with stretch preferred size have incorrect min content 
contributions.
https://bugs.webkit.org/show_bug.cgi?id=317964
<rdar://180748205>

Reviewed by Sammy Gill.

Grid items with stretch preferred sizes were not correctly implementing the 
spec:

https://www.w3.org/TR/css-grid-2/#algo-single-span-items

Specifically, if the item’s computed preferred size behaves as auto or depends
on the size of its containing block in the relevant axis, its minimum 
contribution
is the outer size that would result from assuming the item’s used minimum size 
as
its preferred size; else the item’s minimum contribution is its min-content 
contribution.

Specifically, we were not fully respecting/evaluating:

        "depends on the size of its containing block in the relevant axis"

As we were only handling isPercentOrCalculated() and incorrectly letting 
stretch slip by.

This PR split the check into two spec-named predicates, behavesAsAuto() and
dependsOnContainingBlockSize(), to clarify where and how we are following spec.

* 
LayoutTests/fast/css-grid-layout/grid-item-min-contribution-fill-available-expected.txt:
 Added.
* 
LayoutTests/fast/css-grid-layout/grid-item-min-contribution-fill-available.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-behaves-as-auto-001-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-behaves-as-auto-001.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-fit-content-001-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-min-contribution-fit-content-001.html:
 Added.
* Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp:
(WebCore::GridTrackSizingAlgorithmStrategy::minContributionForGridItem const):

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



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

Reply via email to