Tim Ledbetter
54351e7327
LibWeb: Use shortest serialization for shorthands with repeated values
...
For shorthands where all the values are repeated, we now only output
the value once.
2025-03-20 14:30:55 +01:00
Tim Ledbetter
85728b297f
LibWeb: Ensure the shortest serialization is used for border-radius
...
This implementation also fixes an issue where the individual components
of the `border-radius` shorthand were always assumed to be of type
`BorderRadiusStyleValue`, which could lead to a crash when CSS-wide
keywords were used.
2025-03-18 21:55:06 +01:00
Aliaksandr Kalenik
394073f611
LibWeb: Rename internals.signalTextTestIsDone() to signalTestIsDone()
...
In upcoming change this function will be used for ref-tests as well.
2025-03-18 20:09:46 +01:00
Tim Ledbetter
01d1a9528b
LibWeb: Calculate the correct resolved value for inset properties
...
This improves the output of `getComputedStyle()` for the `top`,
`bottom`, `left` and `right` properties, where the used value is now
returned rather than the computed value, where applicable."
2025-03-18 09:27:51 +00:00
Tim Ledbetter
e011ddd368
LibWeb/CSS: Parse border-block-* properties
...
This doesn't currently honor `writing-mode`, `direction` and
`text-orientation`.
2025-03-14 16:09:10 +00:00
Tim Ledbetter
cd1bba353a
LibWeb/CSS: Parse border-inline-* properties
...
This doesn't currently honor `writing-mode`, `direction` and
`text-orientation`.
2025-03-14 16:09:10 +00:00
Tim Ledbetter
18cccd7633
LibWeb/CSS: Don't allow negative values in border-radius property
2025-03-14 15:07:57 +00:00
Tim Ledbetter
632fc73643
LibWeb/CSS: Don't allow negative border radius in box-shadow property
2025-03-14 15:07:57 +00:00
Tim Ledbetter
dc58c11217
LibWeb: Reject invalid background-position-* property values
2025-03-14 15:07:57 +00:00
Tim Ledbetter
764b80a1cc
LibWeb/CSS: Reject radial-gradient functions with negative size
2025-03-14 15:07:57 +00:00
Tim Ledbetter
6298ec6be4
LibWeb: Validate time values when parsing transition value
2025-03-14 08:52:25 +01:00
Tim Ledbetter
37eb2be348
LibWeb/CSS: Disallow negative time values for transition-duration
2025-03-14 08:52:25 +01:00
Tim Ledbetter
ad4ade3f07
LibWeb/CSS: Disallow invalid <counter-name> values
...
We now parse `<counter-name>` values as a `<custom-ident>`. This
disallows `default` and CSS-wide keywords as counter names. The
specification additionally disallows `none` as a counter name.
2025-03-13 05:23:19 +00:00
Tim Ledbetter
249de20343
LibWeb/CSS: Don't allow negative values in filter functions
2025-03-12 09:06:16 +00:00
Tim Ledbetter
53bf0ef225
LibWeb/CSS: Resolve used value for the inline-size property
2025-03-10 13:01:08 +00:00
Tim Ledbetter
1739e2851d
LibWeb/CSS: Resolve used value for the block-size property
2025-03-10 13:01:08 +00:00
Tim Ledbetter
88d35c547c
LibWeb/CSS: Implement the caret-color property
2025-03-09 19:36:29 +01:00
Sam Atkins
3216da062a
Tests: Import some CSS cursor tests
2025-02-28 13:50:13 +01:00
Sam Atkins
7b13ccabd4
Tests: Import some calc() serialization tests from WPT
2025-02-27 21:42:43 +01:00
Glenn Skrzypczak
64a234c0df
LibWeb/Canvas: Correctly return globalCompositeOperation
...
This fixes a bug that caused the retrieved `globalCompositeOperation`
to contain quotes.
2025-02-24 13:55:51 +00:00
Andreas Kling
a706d0ebf4
LibWeb: Let getComputedStyle() show *used* values for margin/padding
...
We were incorrectly showing *computed* instead of *used* values for
margin and padding when inspected via getComputedStyle().
2025-02-22 20:02:16 +01:00
Psychpsyo
89f36168b7
LibWeb: Import WPT tests for view-transition-name parsing
2025-02-22 14:52:13 +00:00
Andreas Kling
afff44be86
Tests: Import a WPT test for dynamic changes to media queries in iframes
2025-02-13 20:52:31 +01:00
Sam Atkins
106239ce98
Tests: Import some font-parsing tests
2025-02-12 16:00:42 +00:00
Sam Atkins
942e14c27a
Tests: Import WPT :open test
2025-02-10 13:57:36 +00:00
Sam Atkins
070c4a2045
LibWeb: Implement text-align: match-parent
...
At computed-value time, this is converted to whatever the parent's
computed value is. So it behaves a little like `inherit`, except that
an inherited start/end value uses the parent's start/end, which might
be different from the child's.
2025-02-05 17:45:44 +00:00
Mehran Kamal
cfe6702767
LibWeb/CSS: Fix linear-gradient single color-stop usage
...
The Web::CSS::Parser's GradientParsing ignores color-stops if
it is only a single one. This change allows to have color-stops
with double positions against a single color.
Further, also allows for `linear-gradient(black)` and similar
other gradient functions
2025-02-03 17:24:10 +00:00
Aliaksandr Kalenik
0cfe90b59e
LibWeb: Don't allow "display: none" start CSS animations
...
This is both a correctness fix and a performance optimization.
2025-02-01 13:42:00 +01:00
Psychpsyo
67ed676831
LibWeb: Implement CSS 'contain' property
2025-01-28 11:24:40 +00:00
Psychpsyo
9370990ff2
LibWeb: Implement user-select
...
This implements all values of user-select.
2025-01-08 14:37:28 +00:00
Gingeh
8e56109515
LibWeb/CSS: Implement the light-dark color function
2025-01-08 11:18:13 +00:00
Lucas CHOLLET
abc0418710
LibWeb/DOM: Convert elapsedTime to seconds when firing AnimationEvents
...
This makes all three subtests from this test to pass:
- css/css-animations/animationevent-types.html
2024-12-30 11:05:37 +01:00
Lucas CHOLLET
d268df747f
Tests/LibWeb: Import a test from wpt/css-animation
2024-12-30 11:04:55 +01:00
Lucas CHOLLET
9585aeafda
LibWeb/DOM: Don't assume that Animations have an associated effect
...
Fixes a crash on:
- css/css-transitions/CSSTransition-effect.tentative.html
2024-12-28 10:37:44 +01:00
tanner.drake
fe25f77bcf
LibWeb/Geometry: Implement "other than none" keyword check
2024-12-28 07:51:11 +01:00
Lucas CHOLLET
55b4a983a7
LibWeb/CSS: Add the TransitionEvent type
2024-12-25 17:14:08 +01:00
Lucas CHOLLET
61755b29c9
Tests: Import a bunch of css-color tests from WPT
2024-12-19 09:54:14 +00:00
Gingeh
84150f972f
LibWeb: Properly serialize position/edge style values
2024-12-13 11:35:38 +00:00
Lucas CHOLLET
5e62f548db
LibWeb/CSS: Serialize CSSColor without relying on RGB
...
This gives us 140 subtests pass in:
css/css-color/parsing/color-valid-color-function.html
2024-12-11 16:37:22 -07:00
Luke Warlow
fdee82d203
LibWeb: Implement ::file-selector-button pseudo element
...
The button for a file input now matches `::file-selector-button`.
2024-12-05 10:49:57 +00:00
Lucas CHOLLET
6804ce348e
LibWeb/CSS: Interpret NaN as 0 when resolving alpha and rgb values
...
Fixes the crash in css/css-color/parsing/color-valid-hwb.html.
The crash was probably introduced in 248e4bb5 , as it was the first
commit to VERIFY that the value given to `Color::with_opacity` were in
the correct range. As the values in color-valid-hwb.html were resolved
as NaN, the check never passed.
2024-12-04 16:11:41 +00:00
Sam Atkins
624b4689ac
Tests: Remove invalid WPT flexbox test
...
`css/css-flexbox/order-001.htm` is a ref test that does not include any
page to match against.
https://github.com/web-platform-tests/wpt/issues/49521
2024-12-04 13:33:42 +00:00
Lucas CHOLLET
ad3dd547b7
LibWeb/CSS: Shorten the length of srgb serialization
...
The WPT tests require the shortest possible serialization that support
an 8 bits roundtrip.
As an example, `128` is serialized to `0.5` while `127` needs more
precision and thus will be serialized to `0.498`.
This commit fixes 33 WPT subtests in css/css-color.
2024-12-04 11:30:44 +00:00
Gingeh
0afd7f166a
LibWeb: Improve grid-template-area parsing and serialization
2024-12-02 16:19:47 +00:00
Sam Atkins
fa1e102f3c
Tests: Import text-decoration WPT tests
2024-11-30 11:01:12 +01:00
Sam Atkins
2fc164c0b6
Tests: Import WPT CSSOM tests about serialization
...
This is an area we're lacking in, so let's bring these in-tree to track
them more easily. :^)
2024-11-30 11:01:12 +01:00
Pavel Shliak
c00b97a1f0
Tests: Fix 404 at css selector test
...
Fixes css/selectors/focus-visible-017-2.html
2024-11-29 12:16:50 +00:00
Pavel Shliak
1d2ceaf33f
Tests: Fix 404 at css selector test
...
Fixes css/selectors/focus-visible-009.html
2024-11-29 12:16:50 +00:00
Pavel Shliak
dcca24868c
Tests: Fix 404 at css-grid alignment tests
...
Fixes Tests/LibWeb/Text/expected/wpt-import/css/css-grid/alignment/
2024-11-29 12:16:50 +00:00
Glenn Skrzypczak
0d15cc4672
LibWeb/Animation: Fall back to discrete animation in more cases
...
Use discrete animation when the number of components or the types
of corresponding components do not match. This commit does not cover
all cases, but adds FIXME comments in the appropriate places.
2024-11-25 18:10:24 +01:00