haikuwebkit/Source/WebCore/Modules/webxr
Dean Jackson a97bc462cd [WebXR] A session with only one view should cover the full screen
https://bugs.webkit.org/show_bug.cgi?id=229110
<rdar://problem/81940621>

Reviewed by Tim Horton.

Source/WebCore:

If we get into the state with an immersive session and only one view,
we should treat that view as the full width. This situation should never
happen with a real headset, but can be found in testing scenarios.

Test: http/wpt/webxr/xrViewport_singleView_valid.https.html

* Modules/webxr/WebXRWebGLLayer.cpp:
(WebCore::WebXRWebGLLayer::computeViewports): Add test for only one
view and assume it is the left eye.

LayoutTests:

Add a test that provides an immersive session with only one view.
This required copying a few more things over from the WPT directory.

* http/wpt/webxr/resources/test-only-api.js: Added.
(loadScript):
* http/wpt/webxr/resources/webxr_test_constants_single_view.js: Added.
* http/wpt/webxr/resources/webxr_util.js: Added.
* http/wpt/webxr/xrViewport_singleView_valid.https-expected.txt: Added.
* http/wpt/webxr/xrViewport_singleView_valid.https.html: Added.

Canonical link: https://commits.webkit.org/240748@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@281331 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2021-08-20 19:41:33 +00:00
..
Navigator+WebXR.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
NavigatorWebXR.cpp Nothing is keeping navigator.xr alive during GC 2021-06-11 03:00:58 +00:00
NavigatorWebXR.h
WebXRBoundedReferenceSpace.cpp Use 3D points to map the WebXRBoundedReferenceSpace bounds transform 2021-06-07 15:37:54 +00:00
WebXRBoundedReferenceSpace.h [WebXR] Remove reference cycle in WebXRSession 2021-05-09 19:04:22 +00:00
WebXRBoundedReferenceSpace.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRFrame.cpp Clients of optional should use has_value instead of relying on hasValue macro 2021-05-29 22:08:56 +00:00
WebXRFrame.h Remove WTF::Optional synonym for std::optional, using that class template directly instead 2021-05-30 16:11:40 +00:00
WebXRFrame.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRGamepad.cpp Clients of optional should use has_value instead of relying on hasValue macro 2021-05-29 22:08:56 +00:00
WebXRGamepad.h Implement WebXR Input Sources 2021-04-22 14:06:06 +00:00
WebXRInputSource.cpp Clients of optional should use has_value instead of relying on hasValue macro 2021-05-29 22:08:56 +00:00
WebXRInputSource.h [WebXR] Allow WebXR to be tested on PLATFORM(COCOA) 2021-05-14 00:35:23 +00:00
WebXRInputSource.idl [WebXR] Remove reference cycle in WebXRSession 2021-05-09 19:04:22 +00:00
WebXRInputSourceArray.cpp [WebXR] Remove reference cycle in WebXRSession 2021-05-09 19:04:22 +00:00
WebXRInputSourceArray.h [WebXR] Remove reference cycle in WebXRSession 2021-05-10 00:26:01 +00:00
WebXRInputSourceArray.idl [WebXR] Remove reference cycle in WebXRSession 2021-05-09 19:04:22 +00:00
WebXRInputSpace.cpp [WebXR] Remove reference cycle in WebXRSession 2021-05-09 19:04:22 +00:00
WebXRInputSpace.h [WebXR] Remove reference cycle in WebXRSession 2021-05-09 19:04:22 +00:00
WebXRLayer.cpp
WebXRLayer.h Implement WebXR Opaque Framebuffer 2021-03-19 01:27:38 +00:00
WebXRLayer.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXROpaqueFramebuffer.cpp Build fix for iOS Simulator. MTLSharedTexture is not available 2021-06-27 00:48:56 +00:00
WebXROpaqueFramebuffer.h Add support for MTLSharedTextures in WebXR 2021-06-25 22:06:49 +00:00
WebXRPose.cpp Implement WebXR getViewerPose and getPose 2021-02-19 09:07:11 +00:00
WebXRPose.h Implement WebXR getViewerPose and getPose 2021-02-19 09:07:11 +00:00
WebXRPose.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRReferenceSpace.cpp Implement WebXRBoundedReferenceSpace bounds geometry 2021-03-05 10:50:10 +00:00
WebXRReferenceSpace.h Implement WebXRBoundedReferenceSpace bounds geometry 2021-03-05 10:50:10 +00:00
WebXRReferenceSpace.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRRenderState.cpp Remove WTF::Optional synonym for std::optional, using that class template directly instead 2021-05-30 16:11:40 +00:00
WebXRRenderState.h Remove WTF::Optional synonym for std::optional, using that class template directly instead 2021-05-30 16:11:40 +00:00
WebXRRenderState.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRRigidTransform.cpp Complete WebXRRigidTransform implementation 2021-01-27 11:04:16 +00:00
WebXRRigidTransform.h Implement cachedPropertyValue for WebXR [SameObject] attributes 2021-03-26 16:41:27 +00:00
WebXRRigidTransform.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRSession.cpp Next step toward using std::optional directly instead of through WTF::Optional typedef 2021-05-28 01:26:23 +00:00
WebXRSession.h [WebXR] WebXRSession::m_visibilityState is uninitialized 2021-07-26 19:22:45 +00:00
WebXRSession.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRSpace.cpp Change WebXRSpace::efectiveOrigin() matrix multiplication order 2021-06-07 17:00:31 +00:00
WebXRSpace.h Implement WebXR Input Sources 2021-04-22 14:06:06 +00:00
WebXRSpace.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRSystem.cpp Nothing is keeping navigator.xr alive during GC 2021-06-11 03:00:58 +00:00
WebXRSystem.h Nothing is keeping navigator.xr alive during GC 2021-06-11 03:00:58 +00:00
WebXRSystem.idl Nothing is keeping navigator.xr alive during GC 2021-06-11 03:00:58 +00:00
WebXRView.cpp Remove WTF::Optional synonym for std::optional, using that class template directly instead 2021-05-30 16:11:40 +00:00
WebXRView.h Remove WTF::Optional synonym for std::optional, using that class template directly instead 2021-05-30 16:11:40 +00:00
WebXRView.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRViewerPose.cpp Implement WebXR getViewerPose and getPose 2021-02-19 09:07:11 +00:00
WebXRViewerPose.h Implement cachedPropertyValue for WebXR [SameObject] attributes 2021-03-26 16:41:27 +00:00
WebXRViewerPose.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRViewport.cpp Implement WebXR getViewport 2021-02-24 13:09:49 +00:00
WebXRViewport.h Implement WebXR Opaque Framebuffer 2021-03-19 01:27:38 +00:00
WebXRViewport.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
WebXRWebGLLayer.cpp [WebXR] A session with only one view should cover the full screen 2021-08-20 19:41:33 +00:00
WebXRWebGLLayer.h Remove <wtf/Optional.h> 2021-06-02 06:45:51 +00:00
WebXRWebGLLayer.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XREnvironmentBlendMode.h
XREnvironmentBlendMode.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XREye.h Implement WebXR getViewerPose and getPose 2021-02-19 09:07:11 +00:00
XREye.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRFrameRequestCallback.h Complete XRSession::requestAnimationFrame implementation 2021-02-11 17:26:14 +00:00
XRFrameRequestCallback.idl
XRHandedness.h Implement WebXR Input Sources 2021-04-22 14:06:06 +00:00
XRHandedness.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRInputSourceEvent.cpp Implement WebXR Input Sources 2021-04-22 14:06:06 +00:00
XRInputSourceEvent.h Remove <wtf/Optional.h> 2021-06-02 06:45:51 +00:00
XRInputSourceEvent.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRInputSourcesChangeEvent.cpp
XRInputSourcesChangeEvent.h Implement WebXR Input Sources 2021-04-22 14:06:06 +00:00
XRInputSourcesChangeEvent.idl Implement WebXR Input Sources 2021-04-22 14:06:06 +00:00
XRInteractionMode.h
XRInteractionMode.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRReferenceSpaceEvent.cpp
XRReferenceSpaceEvent.h
XRReferenceSpaceEvent.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRReferenceSpaceType.h
XRReferenceSpaceType.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRRenderStateInit.h Remove <wtf/Optional.h> 2021-06-02 06:45:51 +00:00
XRRenderStateInit.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRSessionEvent.cpp
XRSessionEvent.h
XRSessionEvent.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRSessionInit.h
XRSessionInit.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRSessionMode.h
XRSessionMode.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRTargetRayMode.h Implement WebXR Input Sources 2021-04-22 14:06:06 +00:00
XRTargetRayMode.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRVisibilityState.h
XRVisibilityState.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00
XRWebGLLayerInit.h
XRWebGLLayerInit.idl Move RuntimeEnabledFeatures to Settings (Part 1) 2021-04-17 20:07:30 +00:00