Fix automatic minimum size for column flexbox (#33248)

`main_content_size_info()` was always assigning the main-axis automatic
minimum size into the inline axis. But in a column flexbox, the main
axis corresponds to the block axis.

Signed-off-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
Oriol Brufau 2024-08-29 18:55:44 +02:00 committed by GitHub
parent 9ea02fa4b4
commit 4bf941bc8a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 10 additions and 116 deletions

View file

@ -1932,9 +1932,16 @@ impl FlexItemBox {
) )
}, },
); );
let content_min_size_no_auto = LogicalVec2 { let content_min_size_no_auto = if cross_axis_is_item_block_axis {
inline: content_min_size.inline.auto_is(|| automatic_min_size), LogicalVec2 {
block: content_min_size.block.auto_is(Au::zero), inline: content_min_size.inline.auto_is(|| automatic_min_size),
block: content_min_size.block.auto_is(Au::zero),
}
} else {
LogicalVec2 {
inline: content_min_size.inline.auto_is(Au::zero),
block: content_min_size.block.auto_is(|| automatic_min_size),
}
}; };
let block_content_size_callback = |item: &mut FlexItemBox| { let block_content_size_callback = |item: &mut FlexItemBox| {
item.layout_for_block_content_size( item.layout_for_block_content_size(

View file

@ -1,216 +1,108 @@
[flex-minimum-height-flex-items-031.html] [flex-minimum-height-flex-items-031.html]
[.flex 1]
expected: FAIL
[.flex 2] [.flex 2]
expected: FAIL expected: FAIL
[.flex 3]
expected: FAIL
[.flex 4] [.flex 4]
expected: FAIL expected: FAIL
[.flex 5]
expected: FAIL
[.flex 6] [.flex 6]
expected: FAIL expected: FAIL
[.flex 7]
expected: FAIL
[.flex 8] [.flex 8]
expected: FAIL expected: FAIL
[.flex 9]
expected: FAIL
[.flex 10] [.flex 10]
expected: FAIL expected: FAIL
[.flex 11]
expected: FAIL
[.flex 12] [.flex 12]
expected: FAIL expected: FAIL
[.flex 13]
expected: FAIL
[.flex 14] [.flex 14]
expected: FAIL expected: FAIL
[.flex 15]
expected: FAIL
[.flex 16] [.flex 16]
expected: FAIL expected: FAIL
[.flex 17]
expected: FAIL
[.flex 18] [.flex 18]
expected: FAIL expected: FAIL
[.flex 19]
expected: FAIL
[.flex 20] [.flex 20]
expected: FAIL expected: FAIL
[.flex 21]
expected: FAIL
[.flex 22] [.flex 22]
expected: FAIL expected: FAIL
[.flex 23]
expected: FAIL
[.flex 24] [.flex 24]
expected: FAIL expected: FAIL
[.flex 25]
expected: FAIL
[.flex 26] [.flex 26]
expected: FAIL expected: FAIL
[.flex 27]
expected: FAIL
[.flex 28] [.flex 28]
expected: FAIL expected: FAIL
[.flex 29]
expected: FAIL
[.flex 30] [.flex 30]
expected: FAIL expected: FAIL
[.flex 31]
expected: FAIL
[.flex 32] [.flex 32]
expected: FAIL expected: FAIL
[.flex 33]
expected: FAIL
[.flex 34] [.flex 34]
expected: FAIL expected: FAIL
[.flex 35]
expected: FAIL
[.flex 36] [.flex 36]
expected: FAIL expected: FAIL
[.flex 37]
expected: FAIL
[.flex 38] [.flex 38]
expected: FAIL expected: FAIL
[.flex 39]
expected: FAIL
[.flex 40] [.flex 40]
expected: FAIL expected: FAIL
[.flex 41]
expected: FAIL
[.flex 42] [.flex 42]
expected: FAIL expected: FAIL
[.flex 43]
expected: FAIL
[.flex 44] [.flex 44]
expected: FAIL expected: FAIL
[.flex 45]
expected: FAIL
[.flex 46] [.flex 46]
expected: FAIL expected: FAIL
[.flex 47]
expected: FAIL
[.flex 48] [.flex 48]
expected: FAIL expected: FAIL
[.flex 49]
expected: FAIL
[.flex 50] [.flex 50]
expected: FAIL expected: FAIL
[.flex 51]
expected: FAIL
[.flex 52] [.flex 52]
expected: FAIL expected: FAIL
[.flex 53]
expected: FAIL
[.flex 54] [.flex 54]
expected: FAIL expected: FAIL
[.flex 55]
expected: FAIL
[.flex 56] [.flex 56]
expected: FAIL expected: FAIL
[.flex 57]
expected: FAIL
[.flex 58] [.flex 58]
expected: FAIL expected: FAIL
[.flex 59]
expected: FAIL
[.flex 60] [.flex 60]
expected: FAIL expected: FAIL
[.flex 61]
expected: FAIL
[.flex 62] [.flex 62]
expected: FAIL expected: FAIL
[.flex 63]
expected: FAIL
[.flex 64] [.flex 64]
expected: FAIL expected: FAIL
[.flex 65]
expected: FAIL
[.flex 66] [.flex 66]
expected: FAIL expected: FAIL
[.flex 67]
expected: FAIL
[.flex 68] [.flex 68]
expected: FAIL expected: FAIL
[.flex 69]
expected: FAIL
[.flex 70] [.flex 70]
expected: FAIL expected: FAIL
[.flex 71]
expected: FAIL
[.flex 72] [.flex 72]
expected: FAIL expected: FAIL

View file

@ -1,3 +0,0 @@
[flex-minimum-size-001.html]
[.flexbox, .inline-flexbox 3]
expected: FAIL

View file

@ -1,2 +0,0 @@
[stretch-obeys-min-max-001.html]
expected: FAIL