Jelle Raaijmakers
9753b8e62c
Tests: Import WPT canvas repeating pattern test
2025-10-23 13:20:03 +01:00
Tim Ledbetter
2fd424ccb6
LibWeb: Draw canvas arcs and ellipses correctly when radius is zero
...
In this case, we should just draw a line from the last point in the
path to the start point. Previously, a division by zero caused nothing
to be drawn.
2025-10-22 16:08:57 +02:00
Tim Ledbetter
976912f3e9
LibWeb: Normalize negative drawImage() source/destination dimensions
2025-10-22 12:29:04 +02:00
Tim Ledbetter
c4e56cc845
LibWeb: Throw error when calling drawImage() with a broken image
2025-10-22 10:44:58 +02:00
Tim Ledbetter
f1571c4217
LibWeb: Ensure drawImage() always uses the first image frame
2025-10-22 01:25:46 +02:00
Tim Ledbetter
7db73118e9
LibWeb+LibGfx: Draw shadows for stroke joins and caps
2025-10-21 18:55:08 +02:00
Tim Ledbetter
0f295e8989
LibWeb: Take transforms into account when drawing shadows
2025-10-21 18:55:08 +02:00
Tim Ledbetter
0516c414d4
LibWeb: Don't draw shadows for transparent gradient fills
2025-10-21 18:55:08 +02:00
Tim Ledbetter
13f551612c
LibWeb: Don't draw shadows if shadow offset and blur are not set
2025-10-21 18:55:08 +02:00
Tim Ledbetter
eb44cca5bd
LibWeb: Ignore non-finite shadow offset values
2025-10-21 18:55:08 +02:00
Tim Ledbetter
b99c0c6a7f
LibWeb: Account for paint style and global alpha when drawing shadows
2025-10-21 18:55:08 +02:00
Tim Ledbetter
494fcc40ac
LibWeb: Account for transforms in isPointInPath()
2025-10-21 17:42:28 +02:00
Tim Ledbetter
d3ca038b2c
LibWeb: Ensure putImageData() is unaffected by drawing state
2025-10-21 09:52:16 +02:00
Tim Ledbetter
2ac4544a81
LibWeb: Align CanvasRenderingContext2D::putImageData() with the spec
...
This change implements `putImageData()` with `dirtyX`, `dirtyY`,
`dirtyWidth` and `dirtyHeight` arguments.
2025-10-21 09:52:16 +02:00
Tim Ledbetter
08641c9e15
LibWeb: Ensure CanvasPath::arc() nonfinite radius argument is ignored
2025-10-20 12:12:16 +01:00
Tim Ledbetter
303ebc0a67
LibWeb: Ignore non-finite arguments to canvas text drawing methods
2025-10-20 12:12:16 +01:00
ljamar
7fb65283c2
LibWeb: Ignore non-finite args in CanvasRenderingContext2D::clear_rect()
2025-10-17 17:41:58 +01:00
Tim Ledbetter
24a7eac4ab
LibWeb: Delay module script execution until current script has ended
2025-10-16 16:46:48 +02:00
Lorenz A
e73e0b3c92
LibWeb: Implement CSS decode bytes algo
2025-10-16 16:44:42 +02:00
ayeteadoe
05f3bd0fa8
Tests/LibWeb: Import several scaling createImageBitmap() tests
2025-10-14 12:19:33 +02:00
lukasxcs
c1ff2a845c
LibWeb: Implement DataTransfer.set_data()
2025-10-10 08:02:16 +01:00
Feng Yu
fd3c69227f
LibWeb/HTML: Implement focus restoration in HTMLDialogElement
...
When a dialog is closed, restore focus to the previously focused
element if focus is within the dialog or if the dialog was modal.
2025-10-03 08:55:53 +02:00
Shannon Booth
c1d022523b
LibWeb/HTML: Enforce width and height range for OffscreenCanvas
...
We should be throwing a TypeError on values outside of the range
for an unsigned long instead of the default modulo behaviour.
2025-09-22 12:37:30 +01:00
Shannon Booth
e3b5507113
LibWeb/HTML: Avoid crash for extreme bitmap sizes in OffscreenCanvas
2025-09-22 12:37:30 +01:00
Lorenz A
47796e7967
LibWeb: Serialize HTML attribute names as per spec
2025-09-15 10:08:12 +02:00
Tim Ledbetter
d9341adb1e
LibWeb: Implement DataTransferItemList.remove()
2025-09-12 12:30:33 +02:00
Veeti Paananen
5e23df7d8a
LibWeb: Fix case insensitivity for HTMLElement "hidden" attribute
2025-09-11 15:20:18 +02:00
euro20179
e442aa6e10
LibWeb: Ensure parser cannot change the mode is handled
...
This fixes at least 1 wpt bug where text/plain documents are rendered in
quirks mode. The test in question: https://wpt.live/html/browsers/browsing-the-web/read-text/load-text-plain.html
2025-09-07 11:11:43 +01:00
Callum Law
829437c11d
LibWeb: Implement autocorrect attribute
2025-08-29 15:47:17 +01:00
Callum Law
a6fb7c84e9
LibWeb: Implement the autocapitalize attribute
2025-08-29 15:47:17 +01:00
Callum Law
e539990c7f
LibWeb: Implement writingSuggestions attribute
2025-08-29 15:47:17 +01:00
Callum Law
87e0523664
LibWeb: Implement the spellcheck attribute
2025-08-29 15:47:17 +01:00
Glenn Skrzypczak
bd34b11ca2
LibWeb/HTML: Implement date conversions for month and week inputs
...
This implements the conversion algorithms between strings and dates for
inputs of the types month and week.
2025-08-27 15:10:06 +02:00
Glenn Skrzypczak
cac2ee41b9
LibWeb/HTML: Correctly compute whether element is mutable
...
This adapts the implementation of `is_mutable` to align more closely
with the spec. Specifically, it is now also taken into account whether
the element is enabled.
2025-08-14 11:05:28 -04:00
Lukas Schmidt
c2fc4b25cd
LibWeb: Implement HTMLElement.draggable()
2025-08-12 17:15:06 +01:00
Luke Wilde
40bb50ac60
LibWeb: Parse and propagate the iframe sandbox attribute
2025-08-07 19:24:39 +02:00
Idan Horowitz
aeb7b442d3
LibWeb: Add initial support for bitmap cropping to createImageBitmap
2025-08-04 23:39:11 +02:00
Idan Horowitz
3b8ccf4d77
LibWeb: Add initial support for HTMLImageElement in createImageBitmap
2025-08-03 21:47:48 +02:00
Glenn Skrzypczak
3dd8b3230e
LibWeb/HTML: Only include direction if dirname applies
...
This commit changes form data to only include the direction of auto
directionality form associated elements.
2025-08-02 18:27:35 +01:00
Tim Ledbetter
92f85d180e
LibWeb: Serialize empty ImageBitmap data as null
2025-07-21 19:19:50 -04:00
Tim Ledbetter
48417152df
LibWeb: Don't crash when creating empty bitmap from a HTMLCanvasElement
2025-07-20 16:26:57 +12:00
Tim Ledbetter
88efb362c4
LibWeb: Remove UA styles for h1 in article, aside, nav and section
2025-07-11 08:24:32 +02:00
Sam Atkins
af17f38bbf
LibWeb/HTML: Implement and use "optional value"
...
Corresponds to f3444c23ff
Also import a test.
2025-07-08 17:08:39 +01:00
edvwib
8ca956e6f1
LibWeb: Implement 'no-validate state' concept
2025-07-07 20:12:11 +01:00
Shannon Booth
1b8a77f98c
LibWeb/HTML: Avoid potential overflow of index for DOMStringList
...
The included WPT test passes through -1 which ends up modolo'ing
to u32 max at the IDL conversion layer, resulting in an unsigned
overflow when checking bounds.
2025-07-05 12:28:37 +01:00
Tim Ledbetter
5413716802
LibWeb: Don't crash when setting offscreen canvas size to 0
...
Previously, this would crash because `Gfx::Bitmap` can't have a zero
size.
2025-07-04 16:10:38 +01:00
Callum Law
9ab7c5d08d
LibWeb: Support relative lengths in calc color values
...
Gains us ~40 WPT tests.
2025-07-04 13:18:55 +01:00
Tim Ledbetter
844dcd3310
LibWeb: Ignore non-finite OffscreenCanvas shadow offset values
2025-07-01 13:53:27 +12:00
Shannon Booth
20d369b96d
LibWeb/HTML: Implement the exception checks for Document.domain setter
2025-06-27 18:45:48 +12:00
Shannon Booth
0bdcaf02d3
LibWeb/HTML: Only update the image data on fully loaded document
...
Documents created by DOMParser and fragment documents do not
have an origin set on the document by the spec. These documents
also happen to never become fully active.
By properly implementing the steps for the <img> element to only
update the image data for documents which are fully active, this
fixes a crash for img elements in these types of documents.
Unfortunately, this is not a full fix for the microtask queue case.
This is because it seems possible for node document for an <img>
element to be changed during the microtask queue for that document.
It is not clear to me how this can be fixed in a nice way.
2025-06-24 09:56:14 +02:00