Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 0adbbc533b6015f73f71071ed81218a2bc569c0c
https://github.com/WebKit/WebKit/commit/0adbbc533b6015f73f71071ed81218a2bc569c0c
Author: Sergio Villar Senin <[email protected]>
Date: 2026-05-05 (Tue, 05 May 2026)
Changed paths:
A
LayoutTests/imported/w3c/web-platform-tests/webxr/layers/xrCylinderLayer_paramValidation.https-expected.txt
A
LayoutTests/imported/w3c/web-platform-tests/webxr/layers/xrCylinderLayer_paramValidation.https.html
M Source/WebCore/Modules/webxr/WebXRWebGLLayer.cpp
M Source/WebCore/Modules/webxr/XRCylinderLayer.cpp
M Source/WebCore/Modules/webxr/XRCylinderLayer.h
M Source/WebCore/Modules/webxr/XRWebGLBinding.cpp
M Source/WebCore/Modules/webxr/XRWebGLBinding.h
M Source/WebCore/Modules/webxr/XRWebGLBinding.idl
A Source/WebCore/Modules/webxr/XRWebGLCylinderLayerBacking.cpp
A Source/WebCore/Modules/webxr/XRWebGLCylinderLayerBacking.h
M Source/WebCore/Sources.txt
M Source/WebCore/platform/xr/PlatformXR.h
M Source/WebKit/Shared/XR/PlatformXR.serialization.in
M Source/WebKit/UIProcess/XR/openxr/OpenXRLayer.cpp
M Source/WebKit/UIProcess/XR/openxr/OpenXRLayer.h
M Source/WebKit/UIProcess/XR/openxr/PlatformXROpenXR.cpp
Log Message:
-----------
[WebXR Layers] Add Cylinder layer support
https://bugs.webkit.org/show_bug.cgi?id=313421
Reviewed by Dan Glastonbury.
This implements the required changes to create cylinder layers on UIProcess
side and share them with the WebProcess so that web authors could use
them in their WebXR experiences. No new IPC is needed since this uses
the changes from ee9f80f3@main in which all composition layers started
using the same message to create new layers.
As in the case of other composition layers, texture arrays are not
supported yet but they'll be eventually added.
The only platform implementation supporting the cylinder layer will
initially be the OpenXR one which supports the cylinder layer via
the XR_KHR_composition_layer_cylinder extension.
Test:
imported/w3c/web-platform-tests/webxr/layers/xrCylinderLayer_paramValidation.https.html
*
LayoutTests/imported/w3c/web-platform-tests/webxr/layers/xrCylinderLayer_paramValidation.https-expected.txt:
Added.
*
LayoutTests/imported/w3c/web-platform-tests/webxr/layers/xrCylinderLayer_paramValidation.https.html:
Added.
* Source/WebCore/Modules/webxr/WebXRWebGLLayer.cpp:
(WebCore::WebXRWebGLLayer::endFrame):
* Source/WebCore/Modules/webxr/XRCylinderLayer.cpp:
(WebCore::XRCylinderLayer::XRCylinderLayer):
(WebCore::XRCylinderLayer::space const):
(WebCore::XRCylinderLayer::setSpace):
(WebCore::XRCylinderLayer::transform const):
(WebCore::XRCylinderLayer::setTransform):
(WebCore::XRCylinderLayer::setRadius):
(WebCore::XRCylinderLayer::setCentralAngle):
(WebCore::XRCylinderLayer::setAspectRatio):
(WebCore::XRCylinderLayer::startFrame):
(WebCore::XRCylinderLayer::recomputePose):
(WebCore::XRCylinderLayer::endFrame):
* Source/WebCore/Modules/webxr/XRCylinderLayer.h:
(WebCore::XRCylinderLayer::create):
(WebCore::XRCylinderLayer::radius const):
(WebCore::XRCylinderLayer::centralAngle const):
(WebCore::XRCylinderLayer::aspectRatio const):
(WebCore::XRCylinderLayer::space const): Deleted.
(WebCore::XRCylinderLayer::setSpace): Deleted.
(WebCore::XRCylinderLayer::transform const): Deleted.
(WebCore::XRCylinderLayer::setTransform): Deleted.
(WebCore::XRCylinderLayer::setRadius):
(WebCore::XRCylinderLayer::setCentralAngle):
(WebCore::XRCylinderLayer::setAspectRatio):
* Source/WebCore/Modules/webxr/XRWebGLBinding.cpp:
(WebCore::XRWebGLBinding::createEquirectLayer):
(WebCore::XRWebGLBinding::createCylinderLayer):
* Source/WebCore/Modules/webxr/XRWebGLBinding.h:
(WebCore::XRWebGLBinding::createCylinderLayer): Deleted.
* Source/WebCore/Modules/webxr/XRWebGLBinding.idl:
* Source/WebCore/Modules/webxr/XRWebGLCylinderLayerBacking.cpp: Added.
(WebCore::XRWebGLCylinderLayerBacking::create):
(WebCore::XRWebGLCylinderLayerBacking::XRWebGLCylinderLayerBacking):
* Source/WebCore/Modules/webxr/XRWebGLCylinderLayerBacking.h: Copied from
Source/WebCore/Modules/webxr/XRCylinderLayer.cpp.
* Source/WebCore/Sources.txt:
* Source/WebCore/platform/xr/PlatformXR.h:
* Source/WebKit/Shared/XR/PlatformXR.serialization.in:
* Source/WebKit/UIProcess/XR/openxr/OpenXRLayer.cpp:
(WebKit::OpenXRCylinderLayer::create):
(WebKit::OpenXRCylinderLayer::OpenXRCylinderLayer):
(WebKit::OpenXRCylinderLayer::startFrame):
* Source/WebKit/UIProcess/XR/openxr/OpenXRLayer.h:
* Source/WebKit/UIProcess/XR/openxr/PlatformXROpenXR.cpp:
(WebKit::OpenXRCoordinator::createCompositionLayer):
(WebKit::OpenXRCoordinator::createInstance):
Canonical link: https://commits.webkit.org/312596@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications