mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-17 07:50:04 +00:00
LibWeb: Store CSSStyleProperties properties in "specified order"
The spec requires us to store properties in their shorthand-expanded form and in the "specified" order, removing duplicates prefering based on "cascading order". We already enforced this in `set_property` but not at creation time (e.g. in stylesheets) or in `set_css_text` (e.g. updating style attribute). This commit enforces the spec requirements at all the relevant points. We no longer include logical properties in the return value of `getComputedStyle` as they are mapped to their physical equivalents in `StyleComputer::for_each_property_expanding_shorthands`, but resolving that requires a relatively large rework of how we handle logical properties, (namely moving when we map them to their physical equivalents from parse time to style computation time). This also exposes two false positive tests in wpt-import/css/cssom/border-shorthand-serialization.html related to us not yet supporting the border-image css property.
This commit is contained in:
parent
048a0c9106
commit
3421cd76fa
Notes:
github-actions[bot]
2025-06-09 09:44:59 +00:00
Author: https://github.com/Calme1709
Commit: 3421cd76fa
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/4990
Reviewed-by: https://github.com/AtkinsSJ ✅
Reviewed-by: https://github.com/konradekk
7 changed files with 84 additions and 50 deletions
|
@ -1,9 +1,9 @@
|
|||
Harness status: OK
|
||||
|
||||
Found 201 tests
|
||||
Found 203 tests
|
||||
|
||||
191 Pass
|
||||
10 Fail
|
||||
199 Pass
|
||||
4 Fail
|
||||
Pass accent-color
|
||||
Pass border-collapse
|
||||
Pass border-spacing
|
||||
|
@ -58,8 +58,10 @@ Pass text-indent
|
|||
Pass text-justify
|
||||
Pass text-shadow
|
||||
Pass text-transform
|
||||
Pass text-wrap-mode
|
||||
Pass text-wrap-style
|
||||
Pass visibility
|
||||
Pass white-space-collapse
|
||||
Pass word-break
|
||||
Pass word-spacing
|
||||
Pass word-wrap
|
||||
|
@ -82,9 +84,26 @@ Pass background-blend-mode
|
|||
Pass background-clip
|
||||
Pass background-color
|
||||
Pass background-origin
|
||||
Pass background-position-x
|
||||
Pass background-position-y
|
||||
Pass background-repeat
|
||||
Pass background-size
|
||||
Fail block-size
|
||||
Pass border-bottom-color
|
||||
Pass border-bottom-left-radius
|
||||
Pass border-bottom-right-radius
|
||||
Pass border-bottom-style
|
||||
Pass border-bottom-width
|
||||
Pass border-left-color
|
||||
Pass border-left-style
|
||||
Pass border-left-width
|
||||
Pass border-right-color
|
||||
Pass border-right-style
|
||||
Pass border-right-width
|
||||
Pass border-top-color
|
||||
Pass border-top-left-radius
|
||||
Pass border-top-right-radius
|
||||
Pass border-top-style
|
||||
Pass border-top-width
|
||||
Pass bottom
|
||||
Pass box-shadow
|
||||
Pass box-sizing
|
||||
|
@ -121,33 +140,20 @@ Pass grid-template-areas
|
|||
Pass grid-template-columns
|
||||
Pass grid-template-rows
|
||||
Fail height
|
||||
Fail inline-size
|
||||
Pass inset-block-end
|
||||
Pass inset-block-start
|
||||
Pass inset-inline-end
|
||||
Pass inset-inline-start
|
||||
Pass isolation
|
||||
Pass justify-content
|
||||
Pass justify-items
|
||||
Pass justify-self
|
||||
Pass left
|
||||
Pass margin-block-end
|
||||
Pass margin-block-start
|
||||
Pass margin-bottom
|
||||
Pass margin-inline-end
|
||||
Pass margin-inline-start
|
||||
Pass margin-left
|
||||
Pass margin-right
|
||||
Pass margin-top
|
||||
Pass mask-image
|
||||
Pass mask-type
|
||||
Fail max-block-size
|
||||
Pass max-height
|
||||
Fail max-inline-size
|
||||
Pass max-width
|
||||
Fail min-block-size
|
||||
Pass min-height
|
||||
Fail min-inline-size
|
||||
Pass min-width
|
||||
Pass mix-blend-mode
|
||||
Pass object-fit
|
||||
|
@ -160,11 +166,7 @@ Pass outline-style
|
|||
Pass outline-width
|
||||
Pass overflow-x
|
||||
Pass overflow-y
|
||||
Pass padding-block-end
|
||||
Pass padding-block-start
|
||||
Pass padding-bottom
|
||||
Pass padding-inline-end
|
||||
Pass padding-inline-start
|
||||
Pass padding-left
|
||||
Pass padding-right
|
||||
Pass padding-top
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue