Bug 1735589 Part 1 - Respect flex item's aspect-ratio when measuring its main size in block-axis. r=dholbert

We've already set the pre-stretched cross-size via StyleSizeOverrides. All we
have to do is remove the aspect-ratio override to allow the pre-stretched
cross-size in the inline-axis transfer through aspect-ratio to the main-axis as
the block-size.

Differential Revision: https://phabricator.services.mozilla.com/D131260
This commit is contained in:
Ting-Yu Lin 2024-09-14 02:42:20 +00:00
Родитель 21c041eb39
Коммит b332ef48e3
4 изменённых файлов: 0 добавлений и 14 удалений

Просмотреть файл

@ -2078,11 +2078,6 @@ nscoord nsFlexContainerFrame::MeasureFlexItemContentBSize(
StyleSizeOverrides sizeOverrides;
if (aFlexItem.IsStretched()) {
sizeOverrides.mStyleISize.emplace(aFlexItem.StyleCrossSize());
// Suppress any AspectRatio that we might have to prevent ComputeSize() from
// transferring our inline-size override through the aspect-ratio to set the
// block-size, because that would prevent us from measuring the content
// block-size.
sizeOverrides.mAspectRatio.emplace(AspectRatio());
FLEX_LOGV("Cross size override: %d", aFlexItem.CrossSize());
}
sizeOverrides.mStyleBSize.emplace(StyleSize::Auto());

Просмотреть файл

@ -1,5 +0,0 @@
[flex-aspect-ratio-img-column-011.html]
expected:
if (os == "android") and fission: [TIMEOUT, OK]
[.flexbox 7]
expected: FAIL

Просмотреть файл

@ -1,2 +0,0 @@
[flex-minimum-height-flex-items-023.html]
expected: FAIL

Просмотреть файл

@ -1,2 +0,0 @@
[flex-aspect-ratio-046.html]
expected: FAIL