Commit graph

66127 commits

Author SHA1 Message Date
Lucas CHOLLET
d6fb1b61ac Meta: Download support images along their respective WPT tests 2024-12-14 17:56:09 -05:00
Tim Ledbetter
022141647a LibWeb: Implement PopoverInvokerElement attribute change steps
PopoverInvokerElement's explicitly set attr-element should be set to
null whenever the value of the `popovertarget` content attribute is
changed.
2024-12-14 12:11:28 -08:00
Tim Ledbetter
40cb36607c LibWeb: Include namespace parameter in associated_attribute_changed() 2024-12-14 12:11:28 -08:00
Timothy Flynn
5947c37637 LibJS: Return the allocated dst register from deleting super properties
Even though calling delete on a super property will ultimately throw a
ReferenceError, we must return the allocated register for the result of
the delete operation (which would normally be a boolean). If the delete
operation is used in a return statement, the bytecode generator for the
return statement must be able to assume the statement had some output.
2024-12-14 12:08:50 -08:00
Shannon Booth
18dddaa742 LibWeb/HTML: Use DOM's post-connection steps for iframe elements
See: c8ec987d1
2024-12-14 12:06:41 -08:00
stasoid
0a90143420 AK: Fix BumpAllocator.h compilation errors on Windows 2024-12-14 16:12:12 +01:00
Pavel Shliak
03ac6e6e87 LibGC: Preallocate space before dumping GC graph
Speeds up the append_gc_graph function by preallocating space.
This change reduces the time taken to dump the GC graph by 4%
on about:blank.
2024-12-14 09:06:58 +01:00
Luke Wilde
160c15444b LibWeb/WebGL2: Implement blitFramebuffer 2024-12-14 09:06:28 +01:00
Luke Wilde
4a4263d869 LibWeb/WebGL2: Implement readBuffer 2024-12-14 09:06:28 +01:00
Luke Wilde
ced5eea610 LibWeb/WebGL2: Implement MAX_COMBINED_UNIFORM_BLOCKS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
5d383fdd11 LibWeb/WebGL2: Implement MAX_FRAGMENT_INPUT_COMPONENTS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
f1d194a97a LibWeb/WebGL2: Implement MAX_VERTEX_UNIFORM_BLOCKS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
a19fb0a759 LibWeb/WebGL2: Implement MAX_DRAW_BUFFERS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
db89b478ff LibWeb/WebGL2: Implement renderbufferStorageMultisample 2024-12-14 09:06:28 +01:00
Luke Wilde
1fc8353da0 LibWeb/WebGL2: Implement UNIFORM_BUFFER_OFFSET_ALIGNMENT parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
8b07af9801 LibWeb/WebGL2: Implement bindBufferBase 2024-12-14 09:06:28 +01:00
Luke Wilde
2adacbc8bb LibWeb/WebGL2: Implement MAX_UNIFORM_BUFFER_BINDINGS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
0e5e0d922f LibWeb/WebGL2: Implement MAX_UNIFORM_BLOCK_SIZE parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
791c258754 LibWeb/WebGL2: Implement MAX_VERTEX_UNIFORM_COMPONENTS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
b6388abb9b LibWeb/WebGL2: Implement MAX_COLOR_ATTACHMENTS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
99a501bd09 LibWeb/WebGL2: Implement MAX_ARRAY_TEXTURE_LAYERS parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
6e42f401f9 LibWeb/WebGL2: Implement texImage3D with ArrayBufferView and offset 2024-12-14 09:06:28 +01:00
Luke Wilde
50b4d65540 LibWeb/WebGL2: Implement texImage2D with ArrayBufferView and offset 2024-12-14 09:06:28 +01:00
Luke Wilde
766f4d2ec4 LibWeb/WebGL2: Implement texSubImage2D with ArrayBufferView and offset 2024-12-14 09:06:28 +01:00
Luke Wilde
e6ebec853b LibWeb/WebGL2: Implement texSubImage3D with ArrayBufferView and offset 2024-12-14 09:06:28 +01:00
Luke Wilde
5cde82ac80 LibWeb/WebGL2: Implement texStorage3D 2024-12-14 09:06:28 +01:00
Luke Wilde
f266705bc6 LibWeb/WebGL2: Implement MAX_3D_TEXTURE_SIZE parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
dad30672d9 LibWeb/WebGL: Return GL_INVALID_ENUM for unknown buffer parameter names 2024-12-14 09:06:28 +01:00
Luke Wilde
776328e2e7 LibWeb/WebGL2: Implement getInternalformatParameter 2024-12-14 09:06:28 +01:00
Luke Wilde
ee500df7ec LibWeb/WebGL2: Implement MAX_SAMPLES parameter 2024-12-14 09:06:28 +01:00
Luke Wilde
0207487199 LibWeb/WebGL2: Implement deleteSync 2024-12-14 09:06:28 +01:00
Luke Wilde
ff8a9549f1 LibWeb/WebGL2: Implement clientWaitSync 2024-12-14 09:06:28 +01:00
Luke Wilde
135ceb387e LibWeb/WebGL2: Implement fenceSync 2024-12-14 09:06:28 +01:00
Luke Wilde
bc9ae79a47 LibWeb/WebGL2: Implement texSubImage2D with ArrayBufferView 2024-12-14 09:06:28 +01:00
Luke Wilde
f4f3e446a2 LibWeb/WebGL2: Implement bindSampler 2024-12-14 09:06:28 +01:00
Luke Wilde
8a9d1de1cf LibWeb/WebGL2: Implement createSampler 2024-12-14 09:06:28 +01:00
Luke Wilde
71521a7004 LibWeb/WebGL2: Implement WebGL 1 version of bufferSubData 2024-12-14 09:06:28 +01:00
Luke Wilde
bd1cc239df LibWeb/WebGL2: Implement uniformMatrix{2,3,4}fv 2024-12-14 09:06:28 +01:00
Lucas CHOLLET
3c60510896 LibWeb/CSS: Correctly serialize the colorspace name of xyz and xyz-d65
This gives us a +40 subtests passes in:
 - css/css-color/parsing/color-valid-color-function.html
2024-12-14 07:43:48 +00:00
devgianlu
9240d38273 LibCrypto+LibTLS+LibWeb: Store EC key size + refactor serialization
In order for public/private key serialization to work correctly we must
store the size of the key because P-521 cannot be stored as full words
inside `UnsignedBigInteger` and therefore is exported as the wrong
length (68 instead of 66).

This makes it also possible to refactor some methods and cleanup
constants scattered around.

Gets almost all import/export tests, expect the JWK ones that calculate
the public key on export. The `SECPxxxr1` implementation currently fails
to do calculations for P-521.
2024-12-14 01:52:16 +01:00
devgianlu
70db7772b8 LibWeb: Expose support for P-521 in ECDH and ECDSA
Replace all TODOs and FIXMEs requiring P-521 support with actual code
paths that make use of it. Gets a few tests by simply not failing early.
2024-12-14 01:52:16 +01:00
devgianlu
c3aa8af514 LibCrypto: Define SECP521r1
Define SECP521r1 with its constants. Since the parameters cannot be
represented as full bytes, a slight modification has been added to the
byte size.

The current implementation of SECPxxxr1 does not work with this curve.
2024-12-14 01:52:16 +01:00
Sam Atkins
e318316af7 LibWeb/CSS: Add missing parameter to CSSStyleValue::to_string() calls 2024-12-13 08:23:56 -08:00
Sam Atkins
2c3f826162 Tests: Disable crashing css-hover-shadow-dom.html test 2024-12-13 16:11:02 +00:00
Timothy Flynn
962441b3cf LibJS: Avoid internal assertion accessing detached TA internal slots
This defers accessing TA internal slots until we know we have a valid,
attached TA. Our implementation has assertions that guard against this.
2024-12-13 07:09:39 -08:00
Manuel Zahariev
5d85f3a5c8 LibWeb: Test layout of standalone SVG document: edge cases
Tests with different combinations of missing width, height
and viewBox.

All tests confirmed to work on Ladybird:
 - exactly the same as Chromium (131.0.6778.85)
 - almost the same as Firefox (129.0.2)
    - only difference: standalone-w.svg: same size, different alignment
2024-12-13 15:02:49 +00:00
Manuel Zahariev
5d77104c2f LibWeb: Test layout of standalone SVG document: main use case
SVG document with specified width and height attributes is layed out
with this width/height.
2024-12-13 15:02:49 +00:00
Manuel Zahariev
f5e01192cc LibWeb: Layout standalone SVG document with specified dimensions
Before, standalone SVG documents were stretched to fit the agent
viewport.
2024-12-13 15:02:49 +00:00
rmg-x
f4c03d548e WebContent: Remove unused class "ImageCodecPluginSerenity" 2024-12-13 14:44:00 +00:00
Timothy Flynn
458af2d2a9 LibJS: Concatenate all included test262 harness files to a single script
For example, for the following `includes` line in a test262 file:

    includes: [sm/non262-TypedArray-shell.js, sm/non262.js]

We currently parse and execute each file in this list as its own script,
in the order they appear in the list.

Tests have recently been imported test262 from SpiderMonkey which fail
with this behavior. In the above example, if the first script references
some function from the second script, we will currently fail to execute
that harness file.

This patch changes our behavior to concatenate all harness files into a
single script, which satisfies the behavior required by these new tests.
This is how test262.fyi and other test262 runners already behave.
2024-12-13 05:26:39 -08:00