Diff
Modified: trunk/LayoutTests/ChangeLog (277467 => 277468)
--- trunk/LayoutTests/ChangeLog 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/ChangeLog 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1,3 +1,15 @@
+2021-05-13 Dean Jackson <[email protected]>
+
+ [WebXR] Allow WebXR to be tested on PLATFORM(COCOA)
+ https://bugs.webkit.org/show_bug.cgi?id=225578
+
+ Reviewed by Sam Weinig.
+
+ Remove the skip rule for the WebXR directory, and add more
+ specific expected results.
+
+ * TestExpectations:
+
2021-05-13 Cameron McCormack <[email protected]>
Ensure scrollable transformed elements that are themselves within scrollable elements don't ignore border-radius
Modified: trunk/LayoutTests/TestExpectations (277467 => 277468)
--- trunk/LayoutTests/TestExpectations 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/TestExpectations 2021-05-14 00:35:23 UTC (rev 277468)
@@ -3582,10 +3582,6 @@
webkit.org/b/207262 imported/w3c/web-platform-tests/web-animations/timing-model/animations/sync-start-times.html [ Pass ImageOnlyFailure ]
-# WebXR is being implemented
-webkit.org/b/208988 http/wpt/webxr [ Skip ]
-webkit.org/b/208988 imported/w3c/web-platform-tests/webxr [ Skip ]
-
webkit.org/b/210963 imported/w3c/web-platform-tests/css/css-animations/animation-important-002.html [ ImageOnlyFailure ]
webkit.org/b/209080 imported/w3c/web-platform-tests/css/css-writing-modes/central-baseline-alignment-003.xht [ ImageOnlyFailure Pass ]
@@ -4913,3 +4909,47 @@
imported/w3c/web-platform-tests/webstorage/storage_session_setitem_quotaexceedederr.window.html [ Skip ]
# This webstorage test has timed out since it was imported.
imported/w3c/web-platform-tests/webstorage/document-domain.html [ Skip ]
+
+# WebXR - Missing modules.
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/anchors [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/ar-module [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/dom-overlay [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/gamepads-module [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/hit-test [ Skip ]
+
+# WebXR - These currently timeout due to missing features.
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/events_referenceSpace_reset_immersive.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/events_referenceSpace_reset_inline.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/getInputPose_pointer.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrDevice_disconnect_ends.https.html [ Skip ]
+webkit.org/b/208988 http/wpt/webxr/xrSession_ended_by_system.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/events_input_source_recreation.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/events_input_sources_change.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/events_session_select.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/events_session_squeeze.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrSession_requestAnimationFrame_data_valid.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrView_match.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrViewport_valid.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrRigidTransform_inverse.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrSession_visibilityState.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrView_sameObject.https.html [ Skip ]
+
+# WebXR - expected to fail.
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/exclusive_requestFrame_nolayer.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrPose_transform_sameObject.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrReferenceSpace_originOffset.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrSession_requestReferenceSpace_features.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrSession_sameObject.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrSession_viewer_referenceSpace.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/getInputPose_handedness.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/webxr_feature_policy.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrDevice_requestSession_requiredFeatures_unknown.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrInputSource_add_remove.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrInputSource_emulatedPosition.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrView_eyes.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrView_oneframeupdate.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrWebGLLayer_framebuffer_draw.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrWebGLLayer_opaque_framebuffer.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrStationaryReferenceSpace_floorlevel_updates.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrSession_cancelAnimationFrame_invalidhandle.https.html [ Skip ]
+webkit.org/b/208988 imported/w3c/web-platform-tests/webxr/xrWebGLLayer_opaque_framebuffer_stencil.https.html [ Skip ]
\ No newline at end of file
Deleted: trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt (277467 => 277468)
--- trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1,6 +0,0 @@
-Note that some of the values tested here might not be supported, and thus should return the default values.
-
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":false,"powerPreference":"default","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":false}
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":false,"powerPreference":"default","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":true}
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":false,"powerPreference":"default","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":false}
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":true,"powerPreference":"default","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":false}
Deleted: trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes.html (277467 => 277468)
--- trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes.html 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/fast/canvas/webgl/context-creation-attributes.html 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1,38 +0,0 @@
-<script>
-if (window.testRunner)
- window.testRunner.dumpAsText();
-
-function describe(object) {
- result = {};
- if (typeof object === "function")
- object = object.prototype;
- for (let o = object; o; o = o.__proto__) {
- for (let name of Object.getOwnPropertyNames(o)) {
- result[name] = object[name];
- }
- }
- return result;
-}
-
-function testContextCreation(parameters)
-{
- var canvas = document.createElement("canvas");
- var gl = canvas.getContext("webgl", parameters || {});
- var attributes = gl.getContextAttributes();
- var result = document.createElement("pre");
- result.textContent = JSON.stringify(describe(attributes));
- document.body.appendChild(result);
-}
-
-function run() {
- testContextCreation({});
- testContextCreation({stencil: true});
- testContextCreation({powerPreference: "default"});
- testContextCreation({failIfMajorPerformanceCaveat: true});
-}
-
-window.addEventListener("load", run, false);
-</script>
-<p>
- Note that some of the values tested here might not be supported, and thus should return the default values.
-</p>
\ No newline at end of file
Modified: trunk/LayoutTests/fast/dom/navigator-detached-no-crash-expected.txt (277467 => 277468)
--- trunk/LayoutTests/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -30,6 +30,7 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
navigator.appCodeName is OK
navigator.appName is OK
navigator.appVersion is OK
@@ -58,4 +59,5 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
Modified: trunk/LayoutTests/imported/w3c/ChangeLog (277467 => 277468)
--- trunk/LayoutTests/imported/w3c/ChangeLog 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/imported/w3c/ChangeLog 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1,3 +1,26 @@
+2021-05-13 Dean Jackson <[email protected]>
+
+ [WebXR] Allow WebXR to be tested on PLATFORM(COCOA)
+ https://bugs.webkit.org/show_bug.cgi?id=225578
+
+ Reviewed by Sam Weinig.
+
+ New expected results.
+
+ * web-platform-tests/webxr/exclusive_requestFrame_nolayer.https-expected.txt: Added.
+ * web-platform-tests/webxr/render_state_vertical_fov_inline.https-expected.txt: Added.
+ * web-platform-tests/webxr/webxr-supported-by-feature-policy-expected.txt: Added.
+ * web-platform-tests/webxr/webxr_availability.http.sub-expected.txt: Added.
+ * web-platform-tests/webxr/webxr_feature_policy.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrFrame_lifetime.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrPose_transform_sameObject.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrReferenceSpace_originOffsetBounded.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrSession_input_events_end.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrSession_visibilityState.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrStationaryReferenceSpace_floorlevel_updates.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrWebGLLayer_framebuffer_scale.https-expected.txt: Added.
+ * web-platform-tests/webxr/xrWebGLLayer_opaque_framebuffer_stencil.https-expected.txt: Added.
+
2021-05-13 Martin Robinson <[email protected]>
Import new and updated css-scroll-snap WPT tests
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/exclusive_requestFrame_nolayer.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/exclusive_requestFrame_nolayer.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/exclusive_requestFrame_nolayer.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,4 @@
+
+FAIL XRSession requestAnimationFrame must fail if the session has no baseLayer for immersive assert_equals: expected object "[object XRWebGLLayer]" but got object "[object XRWebGLLayer]"
+FAIL XRSession requestAnimationFrame must fail if the session has no baseLayer for non immersive assert_equals: expected object "[object XRWebGLLayer]" but got object "[object XRWebGLLayer]"
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/exclusive_requestFrame_nolayer.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/idlharness.https.window-expected.txt (277467 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/idlharness.https.window-expected.txt 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/idlharness.https.window-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -133,6 +133,8 @@
PASS XRView interface: attribute eye
PASS XRView interface: attribute projectionMatrix
PASS XRView interface: attribute transform
+PASS XRView interface: attribute recommendedViewportScale
+PASS XRView interface: operation requestViewportScale(double?)
PASS XRViewport interface: existence and properties of interface object
PASS XRViewport interface object length
PASS XRViewport interface object name
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/render_state_vertical_fov_inline.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/render_state_vertical_fov_inline.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/render_state_vertical_fov_inline.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+FAIL inlineVerticalFieldOfView is set appropriately on inline sessions promise_test: Unhandled rejection with value: object "InvalidStateError: The object is in an invalid state."
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/render_state_vertical_fov_inline.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr-supported-by-feature-policy-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr-supported-by-feature-policy-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr-supported-by-feature-policy-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+FAIL document.featurePolicy.features should advertise xr-spatial-tracking. undefined is not an object (evaluating 'document.featurePolicy.features')
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr-supported-by-feature-policy-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_availability.http.sub-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_availability.http.sub-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_availability.http.sub-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,4 @@
+
+FAIL Test webxr not available in insecure context assert_equals: navigator.xr was defined in insecure context. expected (undefined) undefined but got (object) object "[object XRSystem]"
+FAIL Test webxr not available in secure context in insecure context assert_equals: Some objects were defined in insecure context: navigator.xr,XRSession,XRFrame,XRLayer,XRView,XRViewport,XRViewerPose,XRWebGLLayer,XRSessionEvent expected 0 but got 9
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_availability.http.sub-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_feature_policy.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_feature_policy.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_feature_policy.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,7 @@
+
+Harness Error (FAIL), message = Test named 'Validate devicechange event behavior without xr-spatial-tracking policy' specified 1 'cleanup' function, and 1 failed.
+
+FAIL Validate isSessionSupported behavior without xr-spatial-tracking policy assert_unreached: Should have rejected: Immersive isSessionSupported should reject Reached unreachable code
+FAIL Validate requestSession behavior without xr-spatial-tracking policy assert_unreached: Should have rejected: Inline with features should reject without feature policy Reached unreachable code
+PASS Validate devicechange event behavior without xr-spatial-tracking policy
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/webxr_feature_policy.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrFrame_lifetime.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrFrame_lifetime.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrFrame_lifetime.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,4 @@
+
+PASS XRFrame methods throw exceptions outside of the requestAnimationFrame callback for immersive sessions
+PASS XRFrame methods throw exceptions outside of the requestAnimationFrame callback for non-immersive sessions
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrFrame_lifetime.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrPose_transform_sameObject.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrPose_transform_sameObject.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrPose_transform_sameObject.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+PASS XRPose.transform meets [SameObject] requirement
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrPose_transform_sameObject.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrReferenceSpace_originOffsetBounded.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrReferenceSpace_originOffsetBounded.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrReferenceSpace_originOffsetBounded.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+FAIL Updating XRBoundedReferenceSpace origin offset updates view, input matrices, and bounds geometry. The object is in an invalid state.
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrReferenceSpace_originOffsetBounded.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_input_events_end.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_input_events_end.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_input_events_end.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+FAIL Calling end during an input callback stops processing at the right time assert_equals: Expected end event, but got selectstart event instead expected "end" but got "selectstart"
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_input_events_end.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_visibilityState.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_visibilityState.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_visibilityState.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+FAIL Ensures that the XRSession's visibilityState is correctly reported and that the associated visibilitychange event fires. promise_test: Unhandled rejection with value: "Session with params \"immersive-vr\" was rejected on device {\"supportsImmersive\":true,\"supportedModes\":[\"inline\",\"immersive-vr\"],\"views\":[{\"eye\":\"left\",\"projectionMatrix\":[1,0,0,0,0,1,0,0,3,2,-1,-1,0,0,-0.2,0],\"viewOffset\":{\"position\":[-0.1,0,0],\"orientation\":[0,0,0,1]},\"resolution\":{\"width\":200,\"height\":200}},{\"eye\":\"right\",\"projectionMatrix\":[1,0,0,0,0,1,0,0,3,2,-1,-1,0,0,-0.2,0],\"viewOffset\":{\"position\":[0.1,0,0],\"orientation\":[0,0,0,1]},\"resolution\":{\"width\":200,\"height\":200}}],\"viewerOrigin\":{\"position\&q
uot;:[0,0,0],\"orientation\":[0,0,0,1]},\"supportedFeatures\":[\"viewer\",\"local\",\"local-floor\",\"bounded-floor\",\"unbounded\",\"hit-test\",\"dom-overlay\",\"light-estimation\",\"anchors\"]} with error: OperationError: Unable to allocate XRWebGLLayer GPU resources."
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrSession_visibilityState.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrStationaryReferenceSpace_floorlevel_updates.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrStationaryReferenceSpace_floorlevel_updates.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrStationaryReferenceSpace_floorlevel_updates.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,4 @@
+
+FAIL 'floor-level' XRStationaryReferenceSpace updates properly when the transform changes for immersive sessions promise_test: Unhandled rejection with value: "Session with params \"immersive-vr\" was rejected on device {\"supportsImmersive\":true,\"supportedModes\":[\"inline\",\"immersive-vr\"],\"views\":[{\"eye\":\"left\",\"projectionMatrix\":[1,0,0,0,0,1,0,0,3,2,-1,-1,0,0,-0.2,0],\"viewOffset\":{\"position\":[-0.1,0,0],\"orientation\":[0,0,0,1]},\"resolution\":{\"width\":200,\"height\":200}},{\"eye\":\"right\",\"projectionMatrix\":[1,0,0,0,0,1,0,0,3,2,-1,-1,0,0,-0.2,0],\"viewOffset\":{\"position\":[0.1,0,0],\"orientation\":[0,0,0,1]},\"resolution\":{\"width\":200,\"height\":200}}],\"viewerOrigin\":{\"position\":[0,0,0],
\"orientation\":[0,0,0,1]},\"supportedFeatures\":[\"viewer\",\"local\",\"local-floor\",\"bounded-floor\",\"unbounded\",\"hit-test\",\"dom-overlay\",\"light-estimation\",\"anchors\"]} with error: OperationError: Unable to allocate XRWebGLLayer GPU resources."
+PASS 'floor-level' XRStationaryReferenceSpace updates properly when the transform changes for non-immersive sessions
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrStationaryReferenceSpace_floorlevel_updates.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_framebuffer_scale.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_framebuffer_scale.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_framebuffer_scale.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+FAIL Ensure framebuffer scaling works as expected. undefined is not an object (evaluating 'fakeDeviceController.displayInfo_.webxrDefaultFramebufferScale')
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_framebuffer_scale.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Added: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_opaque_framebuffer_stencil.https-expected.txt (0 => 277468)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_opaque_framebuffer_stencil.https-expected.txt (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_opaque_framebuffer_stencil.https-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -0,0 +1,3 @@
+
+FAIL Ensure that the framebuffer given by the WebGL layer works with stencil for immersive assert_equals: Should not initially have any errors expected 0 but got 1282
+
Property changes on: trunk/LayoutTests/imported/w3c/web-platform-tests/webxr/xrWebGLLayer_opaque_framebuffer_stencil.https-expected.txt
___________________________________________________________________
Added: svn:eol-style
+native
\ No newline at end of property
Added: svn:keywords
+Date Revision
\ No newline at end of property
Added: svn:mime-type
+text/plain
\ No newline at end of property
Modified: trunk/LayoutTests/platform/mac/TestExpectations (277467 => 277468)
--- trunk/LayoutTests/platform/mac/TestExpectations 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2021-05-14 00:35:23 UTC (rev 277468)
@@ -2192,7 +2192,6 @@
webkit.org/b/223759 [ BigSur Debug ] http/tests/security/webaudio-render-remote-audio-blocked-no-crossorigin-redirect.html [ Pass Timeout ]
-webkit.org/b/222239 fast/canvas/webgl/context-creation-attributes.html [ Pass Failure ]
webkit.org/b/222239 fast/canvas/webgl/webgl2-texture-upload-enums.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/extensions/promoted-extensions-in-shaders.html [ Pass Failure ]
webkit.org/b/222239 webgl/2.0.0/conformance2/rendering/fs-color-type-mismatch-color-buffer-type.html [ Pass Failure ]
Modified: trunk/LayoutTests/platform/mac/fast/dom/navigator-detached-no-crash-expected.txt (277467 => 277468)
--- trunk/LayoutTests/platform/mac/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/platform/mac/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -26,6 +26,7 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
navigator.appCodeName is OK
navigator.appName is OK
navigator.appVersion is OK
@@ -51,4 +52,5 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
Deleted: trunk/LayoutTests/platform/mac-wk1/fast/canvas/webgl/context-creation-attributes-expected.txt (277467 => 277468)
--- trunk/LayoutTests/platform/mac-wk1/fast/canvas/webgl/context-creation-attributes-expected.txt 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/platform/mac-wk1/fast/canvas/webgl/context-creation-attributes-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1,6 +0,0 @@
-Note that some of the values tested here might not be supported, and thus should return the default values.
-
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":false,"powerPreference":"low-power","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":false}
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":false,"powerPreference":"low-power","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":true}
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":false,"powerPreference":"low-power","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":false}
-{"alpha":true,"antialias":true,"depth":true,"failIfMajorPerformanceCaveat":true,"powerPreference":"low-power","premultipliedAlpha":true,"preserveDrawingBuffer":false,"stencil":false}
Modified: trunk/LayoutTests/platform/mac-wk1/fast/dom/navigator-detached-no-crash-expected.txt (277467 => 277468)
--- trunk/LayoutTests/platform/mac-wk1/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/platform/mac-wk1/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -22,6 +22,7 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
navigator.appCodeName is OK
navigator.appName is OK
navigator.appVersion is OK
@@ -44,4 +45,5 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
Modified: trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt (277467 => 277468)
--- trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt 2021-05-14 00:35:23 UTC (rev 277468)
@@ -33,6 +33,7 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
navigator.appCodeName is OK
navigator.appName is OK
navigator.appVersion is OK
@@ -66,4 +67,5 @@
navigator.vendor is OK
navigator.vendorSub is OK
navigator.webdriver is OK
+navigator.xr is OK
Modified: trunk/LayoutTests/platform/wpe/TestExpectations (277467 => 277468)
--- trunk/LayoutTests/platform/wpe/TestExpectations 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/LayoutTests/platform/wpe/TestExpectations 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1023,7 +1023,6 @@
fast/canvas/canvas-toDataURL-webp.html [ Failure ]
fast/canvas/toDataURL-supportedTypes.html [ Failure ]
fast/canvas/webgl/antialiasing-enabled.html [ Failure ]
-fast/canvas/webgl/context-creation-attributes.html [ Failure ]
fast/canvas/webgl/multisample-resolve-consistency.html [ Failure ]
fast/canvas/webgl/premultiplyalpha-test.html [ Failure ]
fast/canvas/webgl/webglcontextchangedevent.html [ Timeout ]
Modified: trunk/Source/WTF/ChangeLog (277467 => 277468)
--- trunk/Source/WTF/ChangeLog 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WTF/ChangeLog 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1,3 +1,14 @@
+2021-05-13 Dean Jackson <[email protected]>
+
+ [WebXR] Allow WebXR to be tested on PLATFORM(COCOA)
+ https://bugs.webkit.org/show_bug.cgi?id=225578
+
+ Reviewed by Sam Weinig.
+
+ Compile-time enabled on all Cocoa platforms.
+
+ * wtf/PlatformEnableCocoa.h:
+
2021-05-13 Chris Dumez <[email protected]>
Rename FileSystem::directoryName() to FileSystem::parentPath()
Modified: trunk/Source/WTF/wtf/PlatformEnableCocoa.h (277467 => 277468)
--- trunk/Source/WTF/wtf/PlatformEnableCocoa.h 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WTF/wtf/PlatformEnableCocoa.h 2021-05-14 00:35:23 UTC (rev 277468)
@@ -599,7 +599,7 @@
#define ENABLE_WEBPROCESS_NSRUNLOOP 1
#endif
-#if !defined(ENABLE_WEBXR) && HAVE(WEBXR_INTERNALS)
+#if !defined(ENABLE_WEBXR)
#define ENABLE_WEBXR 1
#endif
Modified: trunk/Source/WTF/wtf/PlatformUse.h (277467 => 277468)
--- trunk/Source/WTF/wtf/PlatformUse.h 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WTF/wtf/PlatformUse.h 2021-05-14 00:35:23 UTC (rev 277468)
@@ -322,7 +322,10 @@
#if PLATFORM(COCOA)
#define USE_OPENXR 0
#define USE_IOSURFACE_FOR_XR_LAYER_DATA 1
+#if !defined(HAVE_WEBXR_INTERNALS) && !HAVE(WEBXR_INTERNALS)
+#define USE_EMPTYXR 1
#endif
+#endif
#if PLATFORM(IOS_FAMILY)
#define USE_SANDBOX_EXTENSIONS_FOR_CACHE_AND_TEMP_DIRECTORY_ACCESS 1
Modified: trunk/Source/WebCore/Modules/webxr/WebXRInputSource.h (277467 => 277468)
--- trunk/Source/WebCore/Modules/webxr/WebXRInputSource.h 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WebCore/Modules/webxr/WebXRInputSource.h 2021-05-14 00:35:23 UTC (rev 277468)
@@ -62,6 +62,7 @@
const WebXRSpace& targetRaySpace() const {return m_targetRaySpace.get(); };
WebXRSpace* gripSpace() const { return m_gripSpace.get(); }
const Vector<String>& profiles() const { return m_source.profiles; };
+ double connectTime() const { return m_connectTime; }
#if ENABLE(GAMEPAD)
const Gamepad* gamepad() const { return m_gamepad.ptr(); }
#endif
Modified: trunk/Source/WebCore/platform/xr/cocoa/PlatformXRCocoa.h (277467 => 277468)
--- trunk/Source/WebCore/platform/xr/cocoa/PlatformXRCocoa.h 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WebCore/platform/xr/cocoa/PlatformXRCocoa.h 2021-05-14 00:35:23 UTC (rev 277468)
@@ -25,7 +25,6 @@
#pragma once
-#if ENABLE(WEBXR) && PLATFORM(COCOA)
+#if ENABLE(WEBXR) && USE(EMPTYXR)
#include "PlatformXR.h"
-#include <WebKitAdditions/PlatformXRAdditions.h>
#endif
Modified: trunk/Source/WebCore/platform/xr/cocoa/PlatformXRCocoa.mm (277467 => 277468)
--- trunk/Source/WebCore/platform/xr/cocoa/PlatformXRCocoa.mm 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WebCore/platform/xr/cocoa/PlatformXRCocoa.mm 2021-05-14 00:35:23 UTC (rev 277468)
@@ -26,8 +26,42 @@
#import "config.h"
#import "PlatformXRCocoa.h"
-#if ENABLE(WEBXR) && PLATFORM(COCOA)
+#if ENABLE(WEBXR) && USE(EMPTYXR)
-#import <WebKitAdditions/PlatformXRAdditions.mm>
+#import <wtf/NeverDestroyed.h>
+using namespace WebCore;
+
+namespace PlatformXR {
+
+struct Instance::Impl {
+ WTF_MAKE_FAST_ALLOCATED;
+public:
+ Impl() = default;
+ ~Impl() = default;
+};
+
+Instance& Instance::singleton()
+{
+ static LazyNeverDestroyed<Instance> s_instance;
+ static std::once_flag s_onceFlag;
+ std::call_once(s_onceFlag,
+ [&] {
+ s_instance.construct();
+ });
+ return s_instance.get();
+}
+
+Instance::Instance()
+ : m_impl(makeUniqueRef<Impl>())
+{
+}
+
+void Instance::enumerateImmersiveXRDevices(CompletionHandler<void(const DeviceList& devices)>&& callback)
+{
+ callback({ });
+}
+
+}
+
#endif
Modified: trunk/Source/WebKit/ChangeLog (277467 => 277468)
--- trunk/Source/WebKit/ChangeLog 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WebKit/ChangeLog 2021-05-14 00:35:23 UTC (rev 277468)
@@ -1,3 +1,15 @@
+2021-05-13 Dean Jackson <[email protected]>
+
+ [WebXR] Allow WebXR to be tested on PLATFORM(COCOA)
+ https://bugs.webkit.org/show_bug.cgi?id=225578
+
+ Reviewed by Sam Weinig.
+
+ Remove checking for a WebXR feature flag.
+
+ * Shared/WebPreferencesDefaultValues.cpp:
+ (WebKit::defaultWebXREnabled):
+
2021-05-13 Tim Horton <[email protected]>
Work around WebCore failing to build due to NDEBUG getting undefined in release
Modified: trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp (277467 => 277468)
--- trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2021-05-13 23:39:47 UTC (rev 277467)
+++ trunk/Source/WebKit/Shared/WebPreferencesDefaultValues.cpp 2021-05-14 00:35:23 UTC (rev 277468)
@@ -267,8 +267,6 @@
{
#if HAVE(WEBXR_INTERNALS)
return true;
-#elif HAVE(SYSTEM_FEATURE_FLAGS)
- return isFeatureFlagEnabled("WebXR");
#else
return false;
#endif