[webkit-changes] [WebKit/WebKit] 03912f: [WebGPU] createSurface() should be a method on Ins...
Myles C. Maxfield
noreply at github.com
Thu Jan 26 14:25:38 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 03912f4a91fa1802a960cdaff3969d4c4839b305
https://github.com/WebKit/WebKit/commit/03912f4a91fa1802a960cdaff3969d4c4839b305
Author: Myles C. Maxfield <mmaxfield at apple.com>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M Source/WebCore/Modules/WebGPU/GPU.cpp
M Source/WebCore/Modules/WebGPU/GPU.h
M Source/WebCore/Modules/WebGPU/GPUDevice.cpp
M Source/WebCore/Modules/WebGPU/GPUDevice.h
M Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.cpp
M Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.h
M Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.cpp
M Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.h
M Source/WebCore/PAL/pal/graphics/WebGPU/WebGPU.h
M Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUDevice.h
M Source/WebCore/html/HTMLCanvasElement.cpp
M Source/WebCore/html/HTMLCanvasElement.h
M Source/WebCore/html/canvas/GPUCanvasContext.cpp
M Source/WebCore/html/canvas/GPUCanvasContext.h
M Source/WebCore/html/canvas/GPUCanvasContextCocoa.cpp
M Source/WebCore/html/canvas/GPUCanvasContextCocoa.h
M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteDevice.cpp
M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteDevice.h
M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteDevice.messages.in
M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp
M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.h
M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.messages.in
M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteDeviceProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteDeviceProxy.h
M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.h
M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteSurfaceProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteSurfaceProxy.h
Log Message:
-----------
[WebGPU] createSurface() should be a method on Instance, not Device
https://bugs.webkit.org/show_bug.cgi?id=250996
rdar://104542682
Reviewed by Dean Jackson.
Conceptually, a Surface represents a GPUCanvasContext, and a SwapChain represents
a call to GPUCanvasContext.configure(). It's totally possible to create a
GPUCanvasContext without any existing devices; all you need to do is just call
getContext("webgpu") on a canvas. So the spec says that Surfaces should be able
to be created without a Device, so it should be a method on Instance. WebGPU.h
agrees; createSurface is a method on Instance there.
* Source/WebCore/Modules/WebGPU/GPU.cpp:
(WebCore::GPU::createSurface):
* Source/WebCore/Modules/WebGPU/GPU.h:
* Source/WebCore/Modules/WebGPU/GPUDevice.cpp:
(WebCore::GPUDevice::createSurface): Deleted.
* Source/WebCore/Modules/WebGPU/GPUDevice.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.cpp:
(PAL::WebGPU::convertToWidthHeight): Deleted.
(PAL::WebGPU::DeviceImpl::createSurface): Deleted.
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.cpp:
(PAL::WebGPU::convertToWidthHeight):
(PAL::WebGPU::GPUImpl::createSurface):
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/WebGPU.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUDevice.h:
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::getContext):
(WebCore::HTMLCanvasElement::createContextWebGPU):
(WebCore::HTMLCanvasElement::getContextWebGPU):
* Source/WebCore/html/HTMLCanvasElement.h:
* Source/WebCore/html/canvas/GPUCanvasContext.cpp:
(WebCore::GPUCanvasContext::create):
(WebCore::GPUCanvasContext::GPUCanvasContext):
(WebCore::GPUCanvasContext::createSwapChainIfNeeded):
* Source/WebCore/html/canvas/GPUCanvasContext.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteDevice.cpp:
(WebKit::RemoteDevice::createSurface): Deleted.
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteDevice.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteDevice.messages.in:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp:
(WebKit::RemoteGPU::createSurface):
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.messages.in:
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteDeviceProxy.cpp:
(WebKit::WebGPU::RemoteDeviceProxy::createSurface): Deleted.
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteDeviceProxy.h:
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp:
(WebKit::RemoteGPUProxy::createSurface):
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.h:
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteSurfaceProxy.cpp:
(WebKit::WebGPU::RemoteSurfaceProxy::RemoteSurfaceProxy):
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteSurfaceProxy.h:
Canonical link: https://commits.webkit.org/259455@main
More information about the webkit-changes
mailing list