mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 10:38:11 +00:00
LibWeb: Take used width into account for flex item intrinsic heights
If we've already established the used width for a flex item, we need to take it into account when calculating the min-content and max-content heights for that item. We were already doing this when calculating cross sizes. This patch adds the same consideration for main sizes.
This commit is contained in:
parent
00f8b5a911
commit
1ea276bf6d
1 changed files with 12 additions and 6 deletions
|
@ -1846,7 +1846,18 @@ CSSPixels FlexFormattingContext::calculate_cross_max_content_contribution(FlexIt
|
|||
|
||||
CSSPixels FlexFormattingContext::calculate_min_content_main_size(FlexItem const& item) const
|
||||
{
|
||||
return is_row_layout() ? calculate_min_content_width(item.box) : calculate_min_content_height(item.box, m_available_space_for_items->space.width);
|
||||
if (is_row_layout()) {
|
||||
return calculate_min_content_width(item.box);
|
||||
}
|
||||
return calculate_min_content_height(item.box, item.cross_size.has_value() ? AvailableSize::make_definite(item.cross_size.value()) : AvailableSize::make_indefinite());
|
||||
}
|
||||
|
||||
CSSPixels FlexFormattingContext::calculate_max_content_main_size(FlexItem const& item) const
|
||||
{
|
||||
if (is_row_layout()) {
|
||||
return calculate_max_content_width(item.box);
|
||||
}
|
||||
return calculate_max_content_height(item.box, item.cross_size.has_value() ? AvailableSize::make_definite(item.cross_size.value()) : AvailableSize::make_indefinite());
|
||||
}
|
||||
|
||||
CSSPixels FlexFormattingContext::calculate_fit_content_main_size(FlexItem const& item) const
|
||||
|
@ -1861,11 +1872,6 @@ CSSPixels FlexFormattingContext::calculate_fit_content_cross_size(FlexItem const
|
|||
: calculate_fit_content_height(item.box, m_available_space_for_items->space);
|
||||
}
|
||||
|
||||
CSSPixels FlexFormattingContext::calculate_max_content_main_size(FlexItem const& item) const
|
||||
{
|
||||
return is_row_layout() ? calculate_max_content_width(item.box) : calculate_max_content_height(item.box, m_available_space_for_items->space.width);
|
||||
}
|
||||
|
||||
CSSPixels FlexFormattingContext::calculate_min_content_cross_size(FlexItem const& item) const
|
||||
{
|
||||
if (is_row_layout()) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue