Closed Bug 1506008 Opened 11 months ago Closed 11 months ago

[wpt-sync] Sync PR 13991 - [css-flexbox] ChildIntrinsicLogicalWidth should use fit-content, not max-content

Categories

(Core :: CSS Parsing and Computation, enhancement, P4)

enhancement

Tracking

()

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: wptsync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 13991 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/13991
Details from upstream follow.

Christian Biesinger <cbiesinger@chromium.org> wrote:
>  [css-flexbox] ChildIntrinsicLogicalWidth should use fit-content, not max-content
>  
>  This function needs to match the actual sizing we use. But, since
>  this is the cross-axis size, we use fit-content:
>  https://drafts.csswg.org/css-flexbox/#algo-cross-item
>  
>  See LayoutBox::SizesLogicalWidthToFitContent and LayoutBox::ComputeLogicalWidthUsing
>  for where we do that fit-content sizing; this code makes us
>  match the ComputeLogicalWidthUsing calculation.
>  
>  This bug is currently somewhat hard to trigger because it requires
>  a combination of all of:
>  - flex-wrap: wrap
>  - flex-direction: column
>  - More than one flex line
>  - Not using align-items: flex-start or align-content: flex-start
>  - No explicit width on the flex item
>  - The max-content width needs to be larger than the width of flexbox
>  
>  The reason this does not matter in other cases is because we only use
>  this function to set FlexLine::cross_axis_extent, which we overwrite in
>  AlignFlexLines if we only have one line. And if we do have more than
>  one line, we only use this value for aligning items and lines, so
>  it only matters if we don't use flex-start alignment.
>  
>  This bug will be much easier to trigger once bug 599828 is fixed (there
>  are at least two real-world sites that are affected by this once
>  that bug is fixed)
>  
>  Bug: 876749
>  Change-Id: I673026bedfaf0e4c4a25830ef686b200ec8f54a1
>  
>  Reviewed-on: https://chromium-review.googlesource.com/1327746
>  WPT-Export-Revision: 2e492f42600df8b4dffbc09e0e77dcb7dd6f5125
Component: web-platform-tests → CSS Parsing and Computation
Product: Testing → Core
Ran 2 tests
PASS   : 2
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b4925f72b3f8
[wpt PR 13991] - [css-flexbox] ChildIntrinsicLogicalWidth should use fit-content, not max-content, a=testonly
https://hg.mozilla.org/mozilla-central/rev/b4925f72b3f8
Status: NEW → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
You need to log in before you can comment on or make changes to this bug.