LibWeb: Collapse auto-fit tracks in middle of tracks definition [GFC]
Some checks are pending
CI / macOS, arm64, Sanitizer_CI, Clang (push) Waiting to run
CI / Linux, x86_64, Fuzzers_CI, Clang (push) Waiting to run
CI / Linux, x86_64, Sanitizer_CI, GNU (push) Waiting to run
CI / Linux, x86_64, Sanitizer_CI, Clang (push) Waiting to run
Package the js repl as a binary artifact / macOS, arm64 (push) Waiting to run
Package the js repl as a binary artifact / Linux, x86_64 (push) Waiting to run
Run test262 and test-wasm / run_and_update_results (push) Waiting to run
Lint Code / lint (push) Waiting to run
Label PRs with merge conflicts / auto-labeler (push) Waiting to run
Push notes / build (push) Waiting to run

`collapse_auto_fit_tracks_if_needed()` had a check that does collapsing
only if auto-fit is used like
`grid-template-columns: repeat(auto-fit, 1px);`, and it didn't work for
valid cases when `repeat(auto-fit)` is placed in the middle of
definition like `grid-template-columns: 1px repeat(auto-fit, 1px) 1px;`.
This commit is contained in:
Aliaksandr Kalenik 2025-06-22 21:53:48 +02:00 committed by Alexander Kalenik
commit 4ed9f6fcc0
Notes: github-actions[bot] 2025-06-23 00:31:20 +00:00
4 changed files with 34 additions and 31 deletions

View file

@ -2,8 +2,8 @@ Harness status: OK
Found 25 tests
17 Pass
8 Fail
23 Pass
2 Fail
Fail Property grid-template-columns value 'none'
Pass Property grid-template-columns value '1px'
Pass Property grid-template-columns value '1px [a]'
@ -12,20 +12,20 @@ Pass Property grid-template-columns value '[a] 1px'
Pass Property grid-template-columns value '[a] 1px [b]'
Pass Property grid-template-columns value '1px repeat(1, 2px) 3px'
Pass Property grid-template-columns value '1px repeat(auto-fill, 2px) 3px'
Fail Property grid-template-columns value '1px repeat(auto-fit, 2px) 3px'
Pass Property grid-template-columns value '1px repeat(auto-fit, 2px) 3px'
Pass Property grid-template-columns value '1px [a] repeat(1, 2px 3px) [b] 4px'
Pass Property grid-template-columns value '1px [a] repeat(auto-fill, 2px 3px) [b] 4px'
Fail Property grid-template-columns value '1px [a] repeat(auto-fit, 2px 3px) [b] 4px'
Pass Property grid-template-columns value '1px [a] repeat(auto-fit, 2px 3px) [b] 4px'
Pass Property grid-template-columns value '1px [a] repeat(1, [b] 2px [c]) [d] 3px'
Pass Property grid-template-columns value '1px [a] repeat(auto-fill, [b] 2px [c]) [d] 3px'
Fail Property grid-template-columns value '1px [a] repeat(auto-fit, [b] 2px [c]) [d] 3px'
Pass Property grid-template-columns value '1px [a] repeat(auto-fit, [b] 2px [c]) [d] 3px'
Pass Property grid-template-columns value '[a] 1px repeat(1, 2px [b] 3px) 4px [d]'
Pass Property grid-template-columns value '[a] 1px repeat(auto-fill, 2px [b] 3px) 4px [d]'
Fail Property grid-template-columns value '[a] 1px repeat(auto-fit, 2px [b] 3px) 4px [d]'
Pass Property grid-template-columns value '[a] 1px repeat(auto-fit, 2px [b] 3px) 4px [d]'
Pass Property grid-template-columns value '100% [a] repeat(1, [b] 200% [c]) [d] 300%'
Pass Property grid-template-columns value '100% [a] repeat(auto-fill, [b] 200% [c]) [d] 300%'
Fail Property grid-template-columns value '100% [a] repeat(auto-fit, [b] 200% [c]) [d] 300%'
Pass Property grid-template-columns value '100% [a] repeat(auto-fit, [b] 200% [c]) [d] 300%'
Pass Property grid-template-columns value '[a] 1em repeat(1, 2em [b] 3em) 4em [d]'
Pass Property grid-template-columns value '[a] 1em repeat(auto-fill, 2em [b] 3em) 4em [d]'
Fail Property grid-template-columns value '[a] 1em repeat(auto-fit, 2em [b] 3em) 4em [d]'
Pass Property grid-template-columns value '[a] 1em repeat(auto-fit, 2em [b] 3em) 4em [d]'
Fail Property grid-template-columns value 'repeat(calc(1 + 3 * sign(100em - 1px)), 150px)'

View file

@ -2,8 +2,8 @@ Harness status: OK
Found 24 tests
17 Pass
7 Fail
23 Pass
1 Fail
Fail Property grid-template-rows value 'none'
Pass Property grid-template-rows value '1px'
Pass Property grid-template-rows value '1px [a]'
@ -12,19 +12,19 @@ Pass Property grid-template-rows value '[a] 1px'
Pass Property grid-template-rows value '[a] 1px [b]'
Pass Property grid-template-rows value '1px repeat(1, 2px) 3px'
Pass Property grid-template-rows value '1px repeat(auto-fill, 2px) 3px'
Fail Property grid-template-rows value '1px repeat(auto-fit, 2px) 3px'
Pass Property grid-template-rows value '1px repeat(auto-fit, 2px) 3px'
Pass Property grid-template-rows value '1px [a] repeat(1, 2px 3px) [b] 4px'
Pass Property grid-template-rows value '1px [a] repeat(auto-fill, 2px 3px) [b] 4px'
Fail Property grid-template-rows value '1px [a] repeat(auto-fit, 2px 3px) [b] 4px'
Pass Property grid-template-rows value '1px [a] repeat(auto-fit, 2px 3px) [b] 4px'
Pass Property grid-template-rows value '1px [a] repeat(1, [b] 2px [c]) [d] 3px'
Pass Property grid-template-rows value '1px [a] repeat(auto-fill, [b] 2px [c]) [d] 3px'
Fail Property grid-template-rows value '1px [a] repeat(auto-fit, [b] 2px [c]) [d] 3px'
Pass Property grid-template-rows value '1px [a] repeat(auto-fit, [b] 2px [c]) [d] 3px'
Pass Property grid-template-rows value '[a] 1px repeat(1, 2px [b] 3px) 4px [d]'
Pass Property grid-template-rows value '[a] 1px repeat(auto-fill, 2px [b] 3px) 4px [d]'
Fail Property grid-template-rows value '[a] 1px repeat(auto-fit, 2px [b] 3px) 4px [d]'
Pass Property grid-template-rows value '[a] 1px repeat(auto-fit, 2px [b] 3px) 4px [d]'
Pass Property grid-template-rows value '100% [a] repeat(1, [b] 200% [c]) [d] 300%'
Pass Property grid-template-rows value '100% [a] repeat(auto-fill, [b] 200% [c]) [d] 300%'
Fail Property grid-template-rows value '100% [a] repeat(auto-fit, [b] 200% [c]) [d] 300%'
Pass Property grid-template-rows value '100% [a] repeat(auto-fit, [b] 200% [c]) [d] 300%'
Pass Property grid-template-rows value '[a] 1em repeat(1, 2em [b] 3em) 4em [d]'
Pass Property grid-template-rows value '[a] 1em repeat(auto-fill, 2em [b] 3em) 4em [d]'
Fail Property grid-template-rows value '[a] 1em repeat(auto-fit, 2em [b] 3em) 4em [d]'
Pass Property grid-template-rows value '[a] 1em repeat(auto-fit, 2em [b] 3em) 4em [d]'