LibWeb: Account for box-sizing in max-content contribution [GFC]

Use `calculate_inner_height()` and `calculate_inner_width()`, which
account for box-sizing, to resolve the item's size in max-content
contribution calculations.
This commit is contained in:
Aliaksandr Kalenik 2025-11-14 13:47:23 +01:00 committed by Andreas Kling
parent e3cdeada77
commit 70b5496ecd
Notes: github-actions[bot] 2025-11-14 15:25:35 +00:00
3 changed files with 41 additions and 2 deletions

View file

@ -2508,8 +2508,17 @@ CSSPixels GridFormattingContext::calculate_max_content_contribution(GridItem con
return min(result, maximum_size);
}
auto containing_block_size = containing_block_size_for_item(item, dimension);
auto result = item.add_margin_box_sizes(preferred_size.to_px(grid_container(), containing_block_size), dimension);
auto resolve_size = [&] {
auto available_width = AvailableSize::make_definite(containing_block_size_for_item(item, GridDimension::Column));
if (dimension == GridDimension::Row) {
auto available_height = AvailableSize::make_definite(containing_block_size_for_item(item, GridDimension::Row));
AvailableSpace item_available_space { available_width, available_height };
return calculate_inner_height(item.box, item_available_space, preferred_size);
}
return calculate_inner_width(item.box, available_width, preferred_size);
};
auto result = item.add_margin_box_sizes(resolve_size(), dimension);
return min(result, maximum_size);
}