canvas: Add initial support of ImageBitmapRenderingContext (#37998)

Add support of the ImageBitmapRenderingContext as "bitmaprenderer"
canvas context mode to RenderingContext/OffscreenRenderingContext
https://html.spec.whatwg.org/multipage/#imagebitmaprenderingcontext

It is initial implementation with public interface API but without
any display presentation support for HTMLCanvasElement.

Testing: Improvements in the following tests:
-
html/canvas/element/manual/imagebitmap/createImageBitmap-origin.sub.html
- html/canvas/offscreen/manual/text/canvas.2d.offscreen*
-
html/canvas/offscreen/manual/the-offscreen-canvas/offscreencanvas.transfer.to.imagebitmap.nocrash.html
- imagebitmap-renderingcontext/*

Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
This commit is contained in:
Andrei Volykhin 2025-07-15 11:03:49 +03:00 committed by GitHub
parent ccc902eb7a
commit c817d7b9ce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
20 changed files with 365 additions and 82 deletions

View file

@ -2,30 +2,6 @@
[Path2D interface: operation roundRect(unrestricted double, unrestricted double, unrestricted double, unrestricted double, optional (unrestricted double or DOMPointInit or sequence<(unrestricted double or DOMPointInit)>))]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface object]
expected: FAIL
[ImageBitmapRenderingContext interface object length]
expected: FAIL
[ImageBitmapRenderingContext interface object name]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface prototype object]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[ImageBitmapRenderingContext interface: attribute canvas]
expected: FAIL
[ImageBitmapRenderingContext interface: operation transferFromImageBitmap(ImageBitmap?)]
expected: FAIL
[OffscreenCanvas interface: attribute oncontextlost]
expected: FAIL

View file

@ -4346,30 +4346,6 @@
[Path2D interface: operation roundRect(unrestricted double, unrestricted double, unrestricted double, unrestricted double, optional (unrestricted double or DOMPointInit or sequence<(unrestricted double or DOMPointInit)>))]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface object]
expected: FAIL
[ImageBitmapRenderingContext interface object length]
expected: FAIL
[ImageBitmapRenderingContext interface object name]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface prototype object]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[ImageBitmapRenderingContext interface: existence and properties of interface prototype object's @@unscopables property]
expected: FAIL
[ImageBitmapRenderingContext interface: attribute canvas]
expected: FAIL
[ImageBitmapRenderingContext interface: operation transferFromImageBitmap(ImageBitmap?)]
expected: FAIL
[OffscreenCanvas interface: attribute oncontextlost]
expected: FAIL