Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WebGPU] Connect PresentationContext and CompositorIntegration #9428

Conversation

litherum
Copy link
Contributor

@litherum litherum commented Feb 1, 2023

87e3bf7

[WebGPU] Connect PresentationContext and CompositorIntegration
https://bugs.webkit.org/show_bug.cgi?id=251479
rdar://104900104

Reviewed by Tadeu Zagallo.

A PresentationContext is created with a PresentationContextDescriptor, which previously had 0
fields. This patch just adds a CompositorIntegration& as a field, so PresentationContexts are now
created with a CompositorIntegration.

This patch doesn't actually have the PresentationContext do anything with the CompositorIntegration;
it just adds the field in the descriptor. The next patch will make the two actually use each other.

* Source/WebCore/Modules/WebGPU/GPU.cpp:
(WebCore::GPU::createCompositorIntegration):
* Source/WebCore/Modules/WebGPU/GPU.h:
* Source/WebCore/Modules/WebGPU/GPUPresentationContextDescriptor.h:
(WebCore::GPUPresentationContextDescriptor::convertToBacking const):
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.cpp:
(PAL::WebGPU::GPUImpl::createPresentationContext):
(PAL::WebGPU::GPUImpl::createCompositorIntegration):
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/WebGPU.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUPresentationContextDescriptor.h:
* Source/WebCore/html/canvas/GPUCanvasContextCocoa.cpp:
(WebCore::presentationContextDescriptor):
(WebCore::GPUCanvasContextCocoa::GPUCanvasContextCocoa):
(WebCore::GPUCanvasContextCocoa::prepareForDisplay):
* Source/WebCore/html/canvas/GPUCanvasContextCocoa.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp:
(WebKit::RemoteGPU::createCompositorIntegration):
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.messages.in:
* Source/WebKit/Shared/WebGPU/WebGPUPresentationContextDescriptor.cpp:
(WebKit::WebGPU::ConvertToBackingContext::convertToBacking):
(WebKit::WebGPU::ConvertFromBackingContext::convertFromBacking):
* Source/WebKit/Shared/WebGPU/WebGPUPresentationContextDescriptor.h:
* Source/WebKit/Shared/WebGPU/WebGPUPresentationContextDescriptor.serialization.in:
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp:
(WebKit::RemoteGPUProxy::createCompositorIntegration):
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.h:

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

96cf08d

Misc iOS, tvOS & watchOS macOS Linux Windows
βœ… πŸ§ͺ style βœ… πŸ›  ios βœ… πŸ›  mac βœ… πŸ›  wpe   πŸ›  πŸ§ͺ win
βœ… πŸ§ͺ bindings βœ… πŸ›  ios-sim βœ… πŸ›  mac-AS-debug βœ… πŸ›  gtk   πŸ›  wincairo
βœ… πŸ§ͺ webkitperl   πŸ§ͺ ios-wk2 βœ… πŸ§ͺ api-mac   πŸ§ͺ gtk-wk2
  πŸ§ͺ api-ios βœ… πŸ§ͺ mac-wk1   πŸ§ͺ api-gtk
βœ… πŸ›  tv βœ… πŸ§ͺ mac-wk2
  πŸ›  tv-sim   πŸ§ͺ mac-AS-debug-wk2
βœ… πŸ›  watch βœ… πŸ§ͺ mac-wk2-stress
❌ πŸ›  πŸ§ͺ merge βœ… πŸ›  watch-sim

@litherum litherum self-assigned this Feb 1, 2023
@litherum litherum added the WebGPU For bugs in WebGPU label Feb 1, 2023
@litherum litherum added the merge-queue Applied to send a pull request to merge-queue label Feb 1, 2023
@webkit-early-warning-system webkit-early-warning-system force-pushed the eng/WebGPU-Connect-PresentationContext-and-CompositorIntegration branch from 96cf08d to d492b33 Compare February 1, 2023 09:46
https://bugs.webkit.org/show_bug.cgi?id=251479
rdar://104900104

Reviewed by Tadeu Zagallo.

A PresentationContext is created with a PresentationContextDescriptor, which previously had 0
fields. This patch just adds a CompositorIntegration& as a field, so PresentationContexts are now
created with a CompositorIntegration.

This patch doesn't actually have the PresentationContext do anything with the CompositorIntegration;
it just adds the field in the descriptor. The next patch will make the two actually use each other.

* Source/WebCore/Modules/WebGPU/GPU.cpp:
(WebCore::GPU::createCompositorIntegration):
* Source/WebCore/Modules/WebGPU/GPU.h:
* Source/WebCore/Modules/WebGPU/GPUPresentationContextDescriptor.h:
(WebCore::GPUPresentationContextDescriptor::convertToBacking const):
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.cpp:
(PAL::WebGPU::GPUImpl::createPresentationContext):
(PAL::WebGPU::GPUImpl::createCompositorIntegration):
* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUImpl.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/WebGPU.h:
* Source/WebCore/PAL/pal/graphics/WebGPU/WebGPUPresentationContextDescriptor.h:
* Source/WebCore/html/canvas/GPUCanvasContextCocoa.cpp:
(WebCore::presentationContextDescriptor):
(WebCore::GPUCanvasContextCocoa::GPUCanvasContextCocoa):
(WebCore::GPUCanvasContextCocoa::prepareForDisplay):
* Source/WebCore/html/canvas/GPUCanvasContextCocoa.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.cpp:
(WebKit::RemoteGPU::createCompositorIntegration):
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.h:
* Source/WebKit/GPUProcess/graphics/WebGPU/RemoteGPU.messages.in:
* Source/WebKit/Shared/WebGPU/WebGPUPresentationContextDescriptor.cpp:
(WebKit::WebGPU::ConvertToBackingContext::convertToBacking):
(WebKit::WebGPU::ConvertFromBackingContext::convertFromBacking):
* Source/WebKit/Shared/WebGPU/WebGPUPresentationContextDescriptor.h:
* Source/WebKit/Shared/WebGPU/WebGPUPresentationContextDescriptor.serialization.in:
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.cpp:
(WebKit::RemoteGPUProxy::createCompositorIntegration):
* Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteGPUProxy.h:

Canonical link: https://commits.webkit.org/259669@main
@webkit-early-warning-system webkit-early-warning-system force-pushed the eng/WebGPU-Connect-PresentationContext-and-CompositorIntegration branch from d492b33 to 87e3bf7 Compare February 1, 2023 09:49
@webkit-commit-queue
Copy link
Collaborator

Committed 259669@main (87e3bf7): https://commits.webkit.org/259669@main

Reviewed commits have been landed. Closing PR #9428 and removing active labels.

@webkit-early-warning-system webkit-early-warning-system merged commit 87e3bf7 into WebKit:main Feb 1, 2023
@webkit-commit-queue webkit-commit-queue removed the merge-queue Applied to send a pull request to merge-queue label Feb 1, 2023
@litherum litherum deleted the eng/WebGPU-Connect-PresentationContext-and-CompositorIntegration branch February 1, 2023 17:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WebGPU For bugs in WebGPU
Projects
None yet
5 participants