LibWeb: Implement distributing space to tracks beyond limits in GFC

Implements "Distribute space beyond limits" step from:
https://www.w3.org/TR/css-grid-2/#distribute-extra-space
This commit is contained in:
Aliaksandr Kalenik 2023-06-22 00:48:46 +03:00 committed by Andreas Kling
commit 20edbb70f8
Notes: sideshowbarker 2024-07-16 22:17:03 +09:00
4 changed files with 63 additions and 9 deletions

View file

@ -242,8 +242,14 @@ private:
void collapse_auto_fit_tracks_if_needed(GridDimension const);
enum class SpaceDistributionPhase {
AccommodateMinimumContribution,
AccommodateMinContentContribution,
AccommodateMaxContentContribution
};
template<typename Match>
void distribute_extra_space_across_spanned_tracks_base_size(CSSPixels item_size_contribution, Vector<GridTrack&>& spanned_tracks, Match matcher);
void distribute_extra_space_across_spanned_tracks_base_size(GridDimension dimension, CSSPixels item_size_contribution, SpaceDistributionPhase phase, Vector<GridTrack&>& spanned_tracks, Match matcher);
template<typename Match>
void distribute_extra_space_across_spanned_tracks_growth_limit(CSSPixels item_size_contribution, Vector<GridTrack&>& spanned_tracks, Match matcher);