LibWeb: Use *outside* available space for fit-content sizing in FFC

When calculating the fit-content width or height for a flex item, we
need to use the available space *outside* the item, not the available
space *inside*.
This commit is contained in:
Andreas Kling 2022-10-08 13:48:08 +02:00
parent 4a17e8713b
commit 47e3daa40f
Notes: sideshowbarker 2024-07-17 06:03:12 +09:00

View file

@ -1726,14 +1726,14 @@ float FlexFormattingContext::calculate_min_content_main_size(FlexItem const& ite
float FlexFormattingContext::calculate_fit_content_main_size(FlexItem const& item) const
{
return is_row_layout() ? calculate_fit_content_width(item.box, m_state.get(item.box).available_inner_space_or_constraints_from(m_available_space_for_items->space))
: calculate_fit_content_height(item.box, m_state.get(item.box).available_inner_space_or_constraints_from(m_available_space_for_items->space));
return is_row_layout() ? calculate_fit_content_width(item.box, m_available_space_for_items->space)
: calculate_fit_content_height(item.box, m_available_space_for_items->space);
}
float FlexFormattingContext::calculate_fit_content_cross_size(FlexItem const& item) const
{
return !is_row_layout() ? calculate_fit_content_width(item.box, m_state.get(item.box).available_inner_space_or_constraints_from(m_available_space_for_items->space))
: calculate_fit_content_height(item.box, m_state.get(item.box).available_inner_space_or_constraints_from(m_available_space_for_items->space));
return !is_row_layout() ? calculate_fit_content_width(item.box, m_available_space_for_items->space)
: calculate_fit_content_height(item.box, m_available_space_for_items->space);
}
float FlexFormattingContext::calculate_max_content_main_size(FlexItem const& item) const