LibWeb: Align CanvasRenderingContext2D::putImageData() with the spec

This change implements `putImageData()` with `dirtyX`, `dirtyY`,
`dirtyWidth` and `dirtyHeight` arguments.
This commit is contained in:
Tim Ledbetter 2025-10-20 13:11:43 +01:00 committed by Jelle Raaijmakers
parent 509c86dca0
commit 2ac4544a81
Notes: github-actions[bot] 2025-10-21 07:53:42 +00:00
18 changed files with 458 additions and 20 deletions

View file

@ -18,7 +18,8 @@ public:
virtual WebIDL::ExceptionOr<GC::Ref<ImageData>> create_image_data(int width, int height, Optional<ImageDataSettings> const& settings = {}) const = 0;
virtual WebIDL::ExceptionOr<GC::Ref<ImageData>> create_image_data(ImageData const&) const = 0;
virtual WebIDL::ExceptionOr<GC::Ptr<ImageData>> get_image_data(int x, int y, int width, int height, Optional<ImageDataSettings> const& settings = {}) const = 0;
virtual void put_image_data(ImageData&, float x, float y) = 0;
virtual WebIDL::ExceptionOr<void> put_image_data(ImageData&, float x, float y) = 0;
virtual WebIDL::ExceptionOr<void> put_image_data(ImageData&, float x, float y, float dirty_x, float dirty_y, float dirty_width, float dirty_height) = 0;
protected:
CanvasImageData() = default;