LibWeb: Map logical aliases at cascade time

Previously we would incorrectly map these in
`CSSStyleProperties::convert_declarations_to_specified_order`, aside
from being too early (as it meant we didn't maintain them as distinct
from their physical counterparts in CSSStyleProperties), this meant
that we didn't yet have the required context to map them correctly.

We now map them as part of the cascade process. To compute the mapping
context we do a cascade without mapping, and extract the relevant
properties (writing-direction and direction).
This commit is contained in:
Callum Law
2025-06-18 17:45:26 +12:00
committed by Sam Atkins
parent 4e87f85458
commit cfc8d3031b
Notes: github-actions[bot] 2025-06-23 14:20:40 +00:00
14 changed files with 848 additions and 141 deletions

View File

@@ -2,13 +2,12 @@ Harness status: OK
Found 11 tests
7 Pass
4 Fail
Fail All properties can serialize 'initial'
11 Pass
Pass All properties can serialize 'initial'
Pass All properties (except 'all') can serialize their initial value (computed)
Fail All properties (except 'all') can serialize their initial value (specified)
Fail All shorthands can serialize their longhands set to 'initial'
Fail All shorthands (except 'all') can serialize their longhands set to their initial value
Pass All properties (except 'all') can serialize their initial value (specified)
Pass All shorthands can serialize their longhands set to 'initial'
Pass All shorthands (except 'all') can serialize their longhands set to their initial value
Pass All aliases can serialize target property set to 'initial'
Pass All aliases can serialize target property set to its initial value
Pass Can't serialize shorthand when longhands are set to different css-wide keywords