Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: f17e143518925b47020459324bad06f3ead118b0
      
https://github.com/WebKit/WebKit/commit/f17e143518925b47020459324bad06f3ead118b0
  Author: Said Abou-Hallawa <[email protected]>
  Date:   2026-09-29 (Tue, 29 Sep 2026)

  Changed paths:
    M LayoutTests/inspector/canvas/recording-webgl-full-expected.txt
    M LayoutTests/inspector/canvas/recording-webgpu-full-expected.txt
    M LayoutTests/inspector/canvas/resources/recording-webgl.js
    M LayoutTests/inspector/canvas/resources/recording-webgpu.js
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/DerivedSources.make
    M Source/WebCore/Headers.cmake
    R Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.cpp
    R Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.h
    R Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.idl
    R Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.cpp
    R Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.h
    R Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.idl
    A Source/WebCore/Modules/WebGPU/GPUDrawElementImageDestination.cpp
    A Source/WebCore/Modules/WebGPU/GPUDrawElementImageDestination.h
    A Source/WebCore/Modules/WebGPU/GPUDrawElementImageDestination.idl
    A Source/WebCore/Modules/WebGPU/GPUDrawElementImageSource.cpp
    A Source/WebCore/Modules/WebGPU/GPUDrawElementImageSource.h
    A Source/WebCore/Modules/WebGPU/GPUDrawElementImageSource.idl
    M Source/WebCore/Modules/WebGPU/GPUExtent3DDict.cpp
    M Source/WebCore/Modules/WebGPU/GPUExtent3DDict.h
    M Source/WebCore/Modules/WebGPU/GPUQueue.cpp
    M Source/WebCore/Modules/WebGPU/GPUQueue.h
    M Source/WebCore/Modules/WebGPU/GPUQueue.idl
    M Source/WebCore/Sources.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    A Source/WebCore/html/CanvasContent.h
    M Source/WebCore/html/HTMLAttributeNames.in
    M Source/WebCore/html/HTMLCanvasElement.cpp
    M Source/WebCore/html/HTMLCanvasElement.h
    M Source/WebCore/html/HTMLCanvasElement.idl
    M Source/WebCore/html/OffscreenCanvas.cpp
    M Source/WebCore/html/OffscreenCanvas.h
    M Source/WebCore/html/OffscreenCanvas.idl
    M Source/WebCore/html/canvas/CanvasDrawElementImage.idl
    A Source/WebCore/html/canvas/CanvasDrawElementImageOptions.h
    A Source/WebCore/html/canvas/CanvasDrawElementImageOptions.idl
    M Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp
    M Source/WebCore/html/canvas/CanvasRenderingContext2DBase.h
    A Source/WebCore/html/canvas/UpdateElementGeometryOptions.cpp
    A Source/WebCore/html/canvas/UpdateElementGeometryOptions.h
    A Source/WebCore/html/canvas/UpdateElementGeometryOptions.idl
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.h
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.idl
    M Source/WebCore/inspector/InspectorCanvas.cpp
    M Source/WebCore/inspector/InspectorCanvasArguments.cpp
    M Source/WebCore/inspector/InspectorCanvasArguments.h
    M Source/WebCore/inspector/RecordingSwizzleType.h
    M Source/WebCore/rendering/RenderHTMLCanvas.cpp
    M Source/WebInspectorUI/UserInterface/Models/Recording.js
    M Source/WebInspectorUI/UserInterface/Models/RecordingAction.js
    M Source/WebInspectorUI/UserInterface/Views/RecordingActionTreeElement.js

  Log Message:
  -----------
  [HTML-in-Canvas] Import the new IDL changes in the HTML-in-Canvas
https://bugs.webkit.org/show_bug.cgi?id=325295
rdar://188411038

Reviewed by Taher Ali.

The HTML-in-Canvas interface has been updated as follows:

-- The "layoutSubtree" attribute has been replaced by a new "content" attribute.
-- drawElementImage() now returns void instead of its previous return type.
-- drawElementImage() now accepts a new CanvasDrawElementImageOptions dictionary
   as a parameter.
-- HTMLCanvasElement adds two new methods: updateElementGeometry() and
   clearElementGeometry().
-- updateElementGeometry() takes a new UpdateElementGeometryOptions dictionary
   as a parameter.
-- OffscreenCanvas replaces its getElementTransform() method with the same two
   new methods, updateElementGeometry() and clearElementGeometry().
-- WebGLRenderingContext::texElementImage2D() has been renamed to
   texElementSubImage2D(), and its parameters now mirror those of 
texSubImage2D().
-- GPUQueue::copyElementImageToTexture() has been renamed to
   GPUQueue::drawElementImageToTexture(), and its argument types have been 
renamed
   to GPUCopyElementImageSource and GPUDrawElementImageDestination.
-- The members of GPUDrawElementImageSource have been renamed to sourceX, 
sourceY,
   sourceWidth, and sourceHeight.
-- GPUDrawElementImageDestination now inherits from GPUImageCopyTextureTagged
   and adds a new size member of type GPUExtent3D.

* Source/WebCore/DerivedSources.make:
* Source/WebCore/Headers.cmake:
* Source/WebCore/Modules/WebGPU/GPUDrawElementImageDestination.cpp: Copied from 
Source/WebCore/Modules/WebGPU/GPUExtent3DDict.cpp.
(WebCore::GPUDrawElementImageDestination::toJSON const):
* Source/WebCore/Modules/WebGPU/GPUDrawElementImageDestination.h: Copied from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.h.
* Source/WebCore/Modules/WebGPU/GPUDrawElementImageDestination.idl: Renamed 
from Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.idl.
* Source/WebCore/Modules/WebGPU/GPUDrawElementImageSource.cpp: Renamed from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.cpp.
(WebCore::GPUDrawElementImageSource::toJSON const):
* Source/WebCore/Modules/WebGPU/GPUDrawElementImageSource.h: Copied from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.h.
* Source/WebCore/Modules/WebGPU/GPUDrawElementImageSource.idl: Copied from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.idl.
* Source/WebCore/Modules/WebGPU/GPUExtent3DDict.cpp:
(WebCore::toJSON):
* Source/WebCore/Modules/WebGPU/GPUExtent3DDict.h:
* Source/WebCore/Modules/WebGPU/GPUQueue.cpp:
(WebCore::GPUQueue::drawElementImageToTexture):
(WebCore::GPUQueue::copyElementImageToTexture): Deleted.
* Source/WebCore/Modules/WebGPU/GPUQueue.h:
* Source/WebCore/Modules/WebGPU/GPUQueue.idl:
* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/html/CanvasContent.h: Renamed from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.h.
(WebCore::toValidCanvasContent):
* Source/WebCore/html/HTMLAttributeNames.in:
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::attributeChanged):
(WebCore::HTMLCanvasElement::canStartSelection const):
(WebCore::HTMLCanvasElement::canvasContentForBindings const):
(WebCore::HTMLCanvasElement::canvasContent const):
(WebCore::HTMLCanvasElement::drawableElementSnapshot const):
(WebCore::HTMLCanvasElement::updateElementGeometry):
(WebCore::HTMLCanvasElement::clearElementGeometry):
(WebCore::HTMLCanvasElement::getElementTransform):
(WebCore::HTMLCanvasElement::setLayoutSubtree): Deleted.
(WebCore::HTMLCanvasElement::layoutSubtree const): Deleted.
* Source/WebCore/html/HTMLCanvasElement.h:
* Source/WebCore/html/HTMLCanvasElement.idl:
* Source/WebCore/html/OffscreenCanvas.cpp:
(WebCore::OffscreenCanvas::updateElementGeometry):
(WebCore::OffscreenCanvas::clearElementGeometry):
(WebCore::OffscreenCanvas::getElementTransform): Deleted.
* Source/WebCore/html/OffscreenCanvas.h:
* Source/WebCore/html/OffscreenCanvas.idl:
* Source/WebCore/html/canvas/CanvasDrawElementImage.idl:
* Source/WebCore/html/canvas/CanvasDrawElementImageOptions.h: Copied from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.h.
* Source/WebCore/html/canvas/CanvasDrawElementImageOptions.idl: Copied from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.idl.
* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::drawElementImage):
(WebCore::CanvasRenderingContext2DBase::drawSnapshot):
* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.h:
* Source/WebCore/html/canvas/UpdateElementGeometryOptions.cpp: Renamed from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.cpp.
(WebCore::UpdateElementGeometryOptions::toJSON const):
* Source/WebCore/html/canvas/UpdateElementGeometryOptions.h: Renamed from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageDestination.h.
* Source/WebCore/html/canvas/UpdateElementGeometryOptions.idl: Renamed from 
Source/WebCore/Modules/WebGPU/GPUCopyElementImageSource.idl.
* Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::texElementSubImage2D):
(WebCore::WebGLRenderingContextBase::texElementImage2D): Deleted.
* Source/WebCore/html/canvas/WebGLRenderingContextBase.h:
* Source/WebCore/html/canvas/WebGLRenderingContextBase.idl:
* Source/WebCore/inspector/InspectorCanvasArguments.cpp:
(WebCore::process):
(WebCore::InspectorCanvasArgumentProcessor<IDLDictionary<CanvasDrawElementImageOptions>>::operator):
(WebCore::InspectorCanvasArgumentProcessor<IDLDictionary<GPUDrawElementImageDestination>>::operator):
(WebCore::InspectorCanvasArgumentProcessor<IDLDictionary<GPUDrawElementImageSource>>::operator):
(WebCore::InspectorCanvasArgumentProcessor<IDLDictionary<UpdateElementGeometryOptions>>::operator):
(WebCore::InspectorCanvasArgumentProcessor<IDLDictionary<GPUCopyElementImageDestination>>::operator):
 Deleted.
(WebCore::InspectorCanvasArgumentProcessor<IDLDictionary<GPUCopyElementImageSource>>::operator):
 Deleted.
* Source/WebCore/inspector/InspectorCanvasArguments.h:
* Source/WebCore/inspector/RecordingSwizzleType.h:
* Source/WebCore/rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::canHaveChildren const):
(WebCore::RenderHTMLCanvas::paintReplaced):
* Source/WebInspectorUI/UserInterface/Models/Recording.js:
(WI.Recording.isReferenceSwizzleType):
(WI.Recording.displayNameForSwizzleType):
(WI.Recording.try.switch.case.WI.Recording.Swizzle.ArrayOf.async break):
(WI.Recording.prototype.async swizzle):
* Source/WebCore/CMakeLists.txt:
* LayoutTests/inspector/canvas/recording-webgl-full-expected.txt:
* LayoutTests/inspector/canvas/recording-webgpu-full-expected.txt:
* LayoutTests/inspector/canvas/resources/recording-webgl.js:
* LayoutTests/inspector/canvas/resources/recording-webgpu.js:
* Source/WebCore/inspector/InspectorCanvas.cpp:
(WebCore::shouldSnapshotWebGPUAction):
* Source/WebInspectorUI/UserInterface/Models/RecordingAction.js:
* Source/WebInspectorUI/UserInterface/Views/RecordingActionTreeElement.js:
(_classNameForAction):

Canonical link: https://commits.webkit.org/322200@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to