mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-22 01:08:56 +00:00
LibWeb: Skip calculating item's min-content size if possible [GFC]
We could skip doing item's intrinsic min-content layout if we know for sure that there's no tracks with intrinsic sizing function to distribute the min-content size to.
This commit is contained in:
parent
f89afe8e27
commit
7b1a97c109
Notes:
github-actions[bot]
2025-08-31 17:14:26 +00:00
Author: https://github.com/kalenikaliaksandr
Commit: 7b1a97c109
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/6036
1 changed files with 9 additions and 4 deletions
|
@ -942,10 +942,15 @@ void GridFormattingContext::increase_sizes_to_accommodate_spanning_items_crossin
|
|||
spanned_tracks.append(track);
|
||||
});
|
||||
|
||||
auto item_spans_tracks_with_flexible_sizing_function = any_of(spanned_tracks, [](auto& track) {
|
||||
return track.max_track_sizing_function.is_flexible_length();
|
||||
});
|
||||
if (item_spans_tracks_with_flexible_sizing_function)
|
||||
bool item_spans_tracks_with_flexible_sizing_function = false;
|
||||
bool item_spans_tracks_with_intrinsic_sizing_function = false;
|
||||
for (auto& track : spanned_tracks) {
|
||||
if (track.max_track_sizing_function.is_flexible_length())
|
||||
item_spans_tracks_with_flexible_sizing_function = true;
|
||||
if (track.min_track_sizing_function.is_intrinsic(available_size) || track.max_track_sizing_function.is_intrinsic(available_size))
|
||||
item_spans_tracks_with_intrinsic_sizing_function = true;
|
||||
}
|
||||
if (!item_spans_tracks_with_intrinsic_sizing_function || item_spans_tracks_with_flexible_sizing_function)
|
||||
continue;
|
||||
|
||||
// 1. For intrinsic minimums: First increase the base size of tracks with an intrinsic min track sizing
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue