Commit graph

70846 commits

Author SHA1 Message Date
ayeteadoe
904f736b95 LibCore: Implement UDPServer on Windows 2025-08-06 20:24:38 -06:00
ayeteadoe
cc3cabc768 LibCore: Implement TCPServer on Windows 2025-08-06 20:24:38 -06:00
ayeteadoe
9d7971c111 Tests/LibCore: Enable several tests in Windows CI
These are the set of tests that were already building and passing
with little to no modifications required.
2025-08-06 20:24:38 -06:00
Timothy Flynn
cd15b1a2c9 LibJS: Use AK's number parsing over stroul in JS::Token
Some checks are pending
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
This gives us a drop-in replacement for UTF-16 strings.
2025-08-07 02:05:50 +02:00
Timothy Flynn
20995c620f LibJS: Remove MarkupGenerator
It is unused.
2025-08-07 02:05:50 +02:00
Timothy Flynn
298ec6a12a AK: Ensure StringBuilder encodes U+10000 as 2 UTF-16 code units 2025-08-07 02:05:50 +02:00
Timothy Flynn
1b611fba67 AK: Ensure Utf16FlyString is hash-compatible with Utf16View/Utf16String 2025-08-07 02:05:50 +02:00
Timothy Flynn
274f8ee462 AK: Make hashing of UTF-16 strings cheaper
No need to iterate every byte of the string, we can iterate the code
units instead.

We must also actually record that we have cached the hash :^)
2025-08-07 02:05:50 +02:00
Timothy Flynn
73154defa8 AK: Allow implicitly constructing a Utf16View from a Utf16FlyString
The same already works for String and FlyString into StringView, and for
Utf16String into Utf16View.
2025-08-07 02:05:50 +02:00
Timothy Flynn
1bc80848fb AK+LibWeb: Add a UTF-16 starts/ends with wrapper for a single code unit 2025-08-07 02:05:50 +02:00
Timothy Flynn
7082cafdbc AK: Add a UTF-16 replacement wrapper to replace a single code unit
Just for convenience for interop with existing code.
2025-08-07 02:05:50 +02:00
Timothy Flynn
9e0b1bdfca AK: Add a parameter to to_number methods to change the parsed base
This just forwards through to AK::parse_number.
2025-08-07 02:05:50 +02:00
Timothy Flynn
bbda6d13f7 AK: Add a Utf16View method to retrieve an iterator at a code unit offset 2025-08-07 02:05:50 +02:00
Luke Wilde
4aa355658f LibWeb/CSP: Implement the base-uri directive 2025-08-07 00:45:31 +02:00
Luke Wilde
febe4fdb46 LibWeb/CSP: Implement the frame-ancestors directive 2025-08-07 00:45:31 +02:00
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
Some checks are pending
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