Luke Wilde
f9247116b1
LibWeb/CSP: Implement the form-action directive
2025-08-07 00:45:31 +02:00
InvalidUsernameException
6c4483fe0e
LibWeb/CSS: Serialize mask shorthand-property properly
2025-08-06 23:09:07 +01:00
InvalidUsernameException
39b64c9b5c
LibWeb/CSS: Parse mask shorthand-property into longhands
...
This commit regresses a couple tests related to the mask shorthand
property. This is because we now parse the longhands but there are
errors related to serialization. Some of the failures are fixed again in
the next commit. However, for some animation tests this is not the case.
Those failures were simply masked by the fact that we did not parse the
property correctly.
2025-08-06 23:09:07 +01:00
InvalidUsernameException
5fca78e0f9
LibWeb/CSS: Parse mask-image property with multiple values
2025-08-06 23:09:07 +01:00
InvalidUsernameException
f953196cb4
LibWeb/CSS: Parse mask-clip property
2025-08-06 23:09:07 +01:00
InvalidUsernameException
eea6792cf7
LibWeb/CSS: Parse mask-origin property
2025-08-06 23:09:07 +01:00
InvalidUsernameException
866e12f688
LibWeb/CSS: Parse mask-size property
2025-08-06 23:09:07 +01:00
InvalidUsernameException
7c5f1a93ed
LibWeb/CSS: Parse mask-repeat property
2025-08-06 23:09:07 +01:00
InvalidUsernameException
add3a095d8
LibWeb/CSS: Rename background-repeat related symbols to align with spec
...
These will be used for the mask-repeat property as well in an upcoming
commit, hence the more generic names. Also, this more closely matches
the names used in the spec.
2025-08-06 23:09:07 +01:00
InvalidUsernameException
667f195d1e
LibWeb/CSS: Parse mask-position property
2025-08-06 23:09:07 +01:00
InvalidUsernameException
d022eea9fc
LibWeb/CSS: Parse mask-mode property
2025-08-06 23:09:07 +01:00
InvalidUsernameException
22d7a58998
LibWeb/CSS: Parse mask-composite property
2025-08-06 23:09:07 +01:00
InvalidUsernameException
d51f46a0f7
Tests/LibWeb: Import tests for mask property and longhands
2025-08-06 23:09:07 +01:00
Aliaksandr Kalenik
e3aa3016bf
LibWeb: Correctly calculate grid item size while accommodating fr track
...
Implements text from grid layout specification.
Improves layout on https://cal.com/
2025-08-06 22:42:07 +02:00
Edwin Hoksberg
6d954b73f1
LibWeb: Fix IDL codegen for dictionary return type with optional members
2025-08-06 16:34:44 -04:00
Bernard Niset
02b5ab385a
Meta: Generate correct format for user-variables.cmake
2025-08-06 16:32:15 -04:00
ahl-trifork
e534395243
LibIDL: Parse extended attributes before required
keyword
2025-08-06 18:18:24 +01:00
Callum Law
04ac06f3c4
LibWeb: Absolutize CursorStyleValues in StyleComputer::absolutize_values
2025-08-06 17:44:12 +01:00
Callum Law
c49afd7b28
LibWeb: Absolutize LengthPercentage members of BorderRadiusStyleValues
2025-08-06 17:44:12 +01:00
Callum Law
315f811d69
LibWeb: Absolutize BackgroundSizeSVs in StyleComputer::absolutize_values
2025-08-06 17:44:12 +01:00
Callum Law
70cb8d23fb
Tests: Import/create tests related to absolutization of StyleValues
...
Done in a separate commit to show progress
2025-08-06 17:44:12 +01:00
Callum Law
c8bd58c0ba
LibWeb: Add method to absolutize CalculatedOr
2025-08-06 17:44:12 +01:00
Callum Law
0df9c225aa
LibWeb: Add method to absolutize PercentageOr
2025-08-06 17:44:12 +01:00
Callum Law
ba4a57b34d
LibWeb: Absolutize StyleValueList in StyleComputer::absolutize_values
2025-08-06 17:44:12 +01:00
Callum Law
a2ceed27e2
LibWeb: Absolutize CalculatedSVs in StyleComputer::absolutize_values
2025-08-06 17:44:12 +01:00
Callum Law
9db3c66a85
LibWeb: Use correct font size when absolutizing animated properties
2025-08-06 17:44:12 +01:00
Callum Law
011ab5f714
LibWeb: Use correct SerializationMode when serializing CalculatedOr
2025-08-06 17:44:12 +01:00
Callum Law
a5cbcaf698
LibWeb: Use correct SerializationMode when serializing PercentageOr
2025-08-06 17:44:12 +01:00
Andreas Kling
74722cc499
LibWeb: Use the soon-to-be hovered element for tooltip notifications
...
Instead of the currently hovered element.
2025-08-06 17:26:18 +01:00
Callum Law
a44e28fd56
LibWeb: Avoid premature creation of CSSPixels in calc simplification
...
CI / macOS, arm64, Sanitizer, Clang (push) Waiting to run
CI / Linux, x86_64, Fuzzers, Clang (push) Waiting to run
CI / Linux, x86_64, Sanitizer, GNU (push) Waiting to run
CI / Linux, x86_64, Sanitizer, Clang (push) Waiting to run
Package the js repl as a binary artifact / Linux, arm64 (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
Previously we were converting lengths to CSSPixels values when we didn't
need to, this had a couple of effects in that:
- We rounded to CSSPixel resolution prematurely (sometimes giving
incorrect results)
- We converted NaN to 0 when we shouldn't have.
We now avoid prematurely converting lengths to CSSPixels values in two
places:
- `CalculationResult::from_value`
- `CalculatedStyleValue::resolve_length_deprecated` (the new method
already avoided rounding).
Gains us 16 WPT tests.
2025-08-06 14:57:34 +01:00
Callum Law
3fa7bc1919
LibWeb: Simplify calc products including unresolved percentages
2025-08-06 14:53:22 +01:00
Callum Law
c3b1013018
LibWeb: Skip inverted non-canonical values when simplifying product node
...
This matches the logic with the non-inverted children.
Gains us 2 WPT tests.
2025-08-06 14:53:22 +01:00
Jelle Raaijmakers
cd1cf75f7b
LibWeb: Unbreak SVGFilterElement compilation
...
This was caused by an undetected merge conflict.
2025-08-06 15:47:44 +02:00
Tim Ledbetter
1dd3608960
LibWeb/SVG: Apply SVGFeBlendElement
blend mode
...
Previously, the blend mode was always assumed to be `normal`.
2025-08-06 15:21:03 +02:00
Tim Ledbetter
22225af994
LibGfx: Reorder CompositingAndBlendingOperator
values
...
This change aligns blending operator values with the constants in
`SVGFEBlendElement`.
2025-08-06 15:21:03 +02:00
Jelle Raaijmakers
3d613a2ac4
LibWeb: Simplify SVGFilterElement::gfx_filter()
...
No functional changes.
2025-08-06 14:00:31 +01:00
Jelle Raaijmakers
400a36aac1
LibWeb: Warn about unknown SVG filters
...
This might give some debug noise, but it's better than remaining silent.
2025-08-06 14:00:31 +01:00
Sam Atkins
9b6c26e347
Tests: Include test URL in fuzzy mismatch reports
...
The test logs tend to get a bit mixed together, so this makes it
possible to identify which values correspond to which test when multiple
are failing at once.
2025-08-06 13:51:36 +02:00
Sam Atkins
75046857ce
Tests: Report image differences on tests with no fuzzy config defined
...
This can be helpful for identifying what the fuzzy config should be for
new tests.
2025-08-06 13:51:36 +02:00
Sam Atkins
90b49b9015
Tests: Report what the fuzzy configuration parsing error was
2025-08-06 13:51:36 +02:00
Sam Atkins
9889710033
Tests: Allow whitespace around fuzzy-matching configurations
...
Several WPT tests have a space after the semicolon, for example
https://wpt.live/css/css-images/gradient/gradient-single-stop-001.html :
```
<meta name="fuzzy" content="maxDifference=0-1; totalPixels=0-6000">
```
2025-08-06 13:51:36 +02:00
Andreas Kling
28c1dd551b
LibWeb: Don't let aspect-ratio influence size definiteness
...
CI / macOS, arm64, Sanitizer, Clang (push) Waiting to run
CI / Linux, x86_64, Fuzzers, Clang (push) Waiting to run
CI / Linux, x86_64, Sanitizer, GNU (push) Waiting to run
CI / Linux, x86_64, Sanitizer, Clang (push) Waiting to run
Package the js repl as a binary artifact / Linux, arm64 (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
As it turns out, we still have to let the formatting contexts do a bit
of layout work in order to correctly apply the aspect-ratio. Hence we
can't just implicitly transfer definiteness from one size to the other.
This is a revert of 1cfd8b3ac0
.
2025-08-05 21:33:41 +02:00
Andreas Kling
41e8211405
LibWeb: Honor "should treat as auto" cases in aspect-ratio decisions
2025-08-05 21:33:41 +02:00
Aliaksandr Kalenik
1201447dfe
WebContent: Delete unused PageClient::layout_root()
CI / macOS, arm64, Sanitizer, Clang (push) Waiting to run
CI / Linux, x86_64, Fuzzers, Clang (push) Waiting to run
CI / Linux, x86_64, Sanitizer, GNU (push) Waiting to run
CI / Linux, x86_64, Sanitizer, Clang (push) Waiting to run
Package the js repl as a binary artifact / Linux, arm64 (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
2025-08-05 17:24:34 +02:00
Aliaksandr Kalenik
7a34bc2700
LibWeb: Re-evaluate media queries only when things they depend on change
...
Before this change we were re-evaluating media queries on every frame
which adds up in 1-4% in profiles on Discord.
2025-08-05 17:24:34 +02:00
Timothy Flynn
3920194bca
LibJS: Move regulating and balancing logic into ISODateSurpasses
...
This is an editorial change in the Temporal proposal. See:
eddb77f
2025-08-05 11:18:08 -04:00
Timothy Flynn
a95d3e2a5e
LibJS: Split ISO and non-ISO Temporal calendar operations
...
This is an editorial change in the Temporal proposal. See:
47042f2
2025-08-05 11:18:08 -04:00
Timothy Flynn
6d1f90c739
AK: Remove now-unused UTF-16 length from UTF-8 string helper
2025-08-05 15:13:36 +02:00
Timothy Flynn
04d32deb52
LibWeb: Port SVGFormattingContext to UTF-16
2025-08-05 15:13:36 +02:00
Timothy Flynn
d893d3234d
LibGfx: Support UTF-16 SVG text placement
2025-08-05 15:13:36 +02:00