layout: grid template getComputedStyle resolved value (#34885)

* Store taffy detailed info into fragment

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

* Fix info propagation and resolved grid track query

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

* Fix import

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

* Fix tracklist matching logic and type optimization

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

* Run fmt

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

* Update wpt expectations

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

* Optimizing info propagation and minor qol

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

* Run fmt

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>

---------

Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
This commit is contained in:
Steven Novaryo 2025-01-09 18:49:27 +08:00 committed by GitHub
parent 040e29415b
commit 76fa456a9a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
25 changed files with 297 additions and 778 deletions

View file

@ -2,9 +2,6 @@
[Check that min-width is honored when sizing auto columns.]
expected: FAIL
[Check that min-width is honored when sizing auto columns and spanning grid items.]
expected: FAIL
[Check the interactions between width and min-width and auto tracks.]
expected: FAIL

View file

@ -1,90 +1,6 @@
[grid-flex-track-intrinsic-sizes-001.html]
['grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;]
expected: FAIL
['grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;]
expected: FAIL
['grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;]
expected: FAIL
['grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;]
expected: FAIL
['grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;]
expected: FAIL
['grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;]
expected: FAIL
['grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;]
expected: FAIL
['grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: minmax(30px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(30px, 1fr) minmax(0, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);]
expected: FAIL
['grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);]
expected: FAIL
['grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;]
expected: FAIL
['grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;]
expected: FAIL
['grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;]
expected: FAIL
['grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;]
expected: FAIL
['grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;]
expected: FAIL

View file

@ -1,131 +1,5 @@
[grid-flex-track-intrinsic-sizes-003.html]
expected: [TIMEOUT, OK]
[auto min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;]
expected: FAIL
[auto min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;]
expected: FAIL
@ -144,21 +18,6 @@
[min-content min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);]
expected: FAIL
@ -189,119 +48,8 @@
[min-content min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;]
expected: FAIL
[min-content min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr; and grid-template-rows: 0fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr; and grid-template-rows: 1fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 2fr; and grid-template-rows: 2fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, .5fr); and grid-template-rows: minmax(0, .5fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 1fr); and grid-template-rows: minmax(0, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 2fr); and grid-template-rows: minmax(0, 2fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(75px, 1fr); and grid-template-rows: minmax(75px, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr 0fr; and grid-template-rows: 0fr 0fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr 1fr; and grid-template-rows: 0fr 1fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr 0fr; and grid-template-rows: 1fr 0fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr 1fr; and grid-template-rows: 1fr 1fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr 3fr; and grid-template-rows: 1fr 3fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr 0fr 1fr; and grid-template-rows: 0fr 0fr 1fr;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 0fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 0fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(0, 0fr) minmax(0, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(15px, 0fr) minmax(0, 1fr); and grid-template-rows: minmax(15px, 0fr) minmax(0, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(20px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(20px, 1fr) minmax(0, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(40px, 1fr) minmax(0, 1fr); and grid-template-rows: minmax(40px, 1fr) minmax(0, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr minmax(0, 0fr); and grid-template-rows: 0fr minmax(0, 0fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr minmax(0, 1fr); and grid-template-rows: 0fr minmax(0, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr minmax(0, 1fr); and grid-template-rows: 1fr minmax(0, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr minmax(25px, 1fr); and grid-template-rows: 1fr minmax(25px, 1fr);]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr min-content; and grid-template-rows: 0fr min-content;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0fr auto; and grid-template-rows: 0fr auto;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 0.5fr auto; and grid-template-rows: 0.5fr auto;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr auto; and grid-template-rows: 1fr auto;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr max-content; and grid-template-rows: 1fr max-content;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: 1fr min-content; and grid-template-rows: 1fr min-content;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) min-content; and grid-template-rows: minmax(0, 0fr) min-content;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 0fr) auto; and grid-template-rows: minmax(0, 0fr) auto;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(0, 1fr) auto; and grid-template-rows: minmax(0, 1fr) auto;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(25px, 0fr) auto; and grid-template-rows: minmax(25px, 0fr) auto;]
expected: FAIL
[50px min item 'grid' with: grid-template-columns: minmax(25px, 1fr) auto; and grid-template-rows: minmax(25px, 1fr) auto;]
expected: FAIL

View file

@ -1,93 +1,21 @@
[grid-intrinsic-track-sizes-001.html]
['grid' with: grid-template-columns: auto; and grid-template-rows: auto;]
expected: FAIL
['grid' with: grid-template-columns: min-content; and grid-template-rows: min-content;]
expected: FAIL
['grid' with: grid-template-columns: max-content; and grid-template-rows: max-content;]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, auto); and grid-template-rows: minmax(0, auto);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, min-content); and grid-template-rows: minmax(0, min-content);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, max-content); and grid-template-rows: minmax(0, max-content);]
expected: FAIL
['grid' with: grid-template-columns: minmax(auto, 10px); and grid-template-rows: minmax(auto, 10px);]
expected: FAIL
['grid' with: grid-template-columns: minmax(min-content, 10px); and grid-template-rows: minmax(min-content, 10px);]
expected: FAIL
['grid' with: grid-template-columns: minmax(max-content, 10px); and grid-template-rows: minmax(max-content, 10px);]
expected: FAIL
['grid' with: grid-template-columns: auto auto; and grid-template-rows: auto auto;]
expected: FAIL
['grid' with: grid-template-columns: min-content min-content; and grid-template-rows: min-content min-content;]
expected: FAIL
['grid' with: grid-template-columns: max-content max-content; and grid-template-rows: max-content max-content;]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, auto) minmax(0, auto); and grid-template-rows: minmax(0, auto) minmax(0, auto);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, min-content) minmax(0, min-content); and grid-template-rows: minmax(0, min-content) minmax(0, min-content);]
expected: FAIL
['grid' with: grid-template-columns: minmax(0, max-content) minmax(0, max-content); and grid-template-rows: minmax(0, max-content) minmax(0, max-content);]
expected: FAIL
['grid' with: grid-template-columns: minmax(auto, 4px) minmax(auto, 4px); and grid-template-rows: minmax(auto, 4px) minmax(auto, 4px);]
expected: FAIL
['grid' with: grid-template-columns: minmax(auto, 10px) minmax(auto, 10px); and grid-template-rows: minmax(auto, 10px) minmax(auto, 10px);]
expected: FAIL
['grid' with: grid-template-columns: minmax(min-content, 10px) minmax(min-content, 10px); and grid-template-rows: minmax(min-content, 10px) minmax(min-content, 10px);]
expected: FAIL
['grid' with: grid-template-columns: minmax(max-content, 10px) minmax(max-content, 10px); and grid-template-rows: minmax(max-content, 10px) minmax(max-content, 10px);]
expected: FAIL
['grid' with: grid-template-columns: 20px auto; and grid-template-rows: 20px auto;]
expected: FAIL
['grid' with: grid-template-columns: 20px min-content; and grid-template-rows: 20px min-content;]
expected: FAIL
['grid' with: grid-template-columns: 20px max-content; and grid-template-rows: 20px max-content;]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(0, auto); and grid-template-rows: 20px minmax(0, auto);]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(0, min-content); and grid-template-rows: 20px minmax(0, min-content);]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(0, max-content); and grid-template-rows: 20px minmax(0, max-content);]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(auto, 30px); and grid-template-rows: 20px minmax(auto, 30px);]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(min-content, 6px); and grid-template-rows: 20px minmax(min-content, 6px);]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(min-content, 40px); and grid-template-rows: 20px minmax(min-content, 40px);]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(max-content, 6px); and grid-template-rows: 20px minmax(max-content, 6px);]
expected: FAIL
['grid' with: grid-template-columns: 20px minmax(max-content, 30px); and grid-template-rows: 20px minmax(max-content, 30px);]
expected: FAIL
['grid' with: grid-template-columns: max-content min-content; and grid-template-rows: max-content min-content;]
expected: FAIL