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

Implement hit testing API #26171

Merged
merged 18 commits into from Apr 20, 2020
Merged
Changes from 1 commit
Commits
File filter...
Filter file types
Jump to…
Jump to file
Failed to load files.

Always

Just for now

Support .supportedModes to enable newer tests

  • Loading branch information
Manishearth committed Apr 20, 2020
commit 7f353033f4aa441934d4511a659f7621692ea634
@@ -20,7 +20,9 @@ interface XRTest {
};

dictionary FakeXRDeviceInit {
required boolean supportsImmersive;
boolean supportsImmersive = false;
sequence<XRSessionMode> supportedModes;

required sequence<FakeXRViewInit> views;

// this is actually sequence<any>, but we don't support
@@ -9,6 +9,7 @@
use crate::dom::bindings::callback::ExceptionHandling;
use crate::dom::bindings::cell::DomRefCell;
use crate::dom::bindings::codegen::Bindings::FunctionBinding::Function;
use crate::dom::bindings::codegen::Bindings::XRSystemBinding::XRSessionMode;
use crate::dom::bindings::codegen::Bindings::XRTestBinding::{FakeXRDeviceInit, XRTestMethods};
use crate::dom::bindings::refcounted::{Trusted, TrustedPromise};
use crate::dom::bindings::reflector::{reflect_dom_object, DomObject, Reflector};
@@ -119,12 +120,24 @@ impl XRTestMethods for XRTest {
None
};

let (mut supports_inline, mut supports_vr, mut supports_ar) = (false, false, false);

if let Some(ref modes) = init.supportedModes {
for mode in modes {
match mode {
XRSessionMode::Immersive_vr => supports_vr = true,
XRSessionMode::Immersive_ar => supports_ar = true,
XRSessionMode::Inline => supports_inline = true,
}
}
}

let init = MockDeviceInit {
viewer_origin: origin,
views,
supports_inline: false,
supports_vr: init.supportsImmersive,
supports_ar: false,
supports_inline,
supports_vr,
supports_ar,
floor_origin,
supported_features,
world,

This file was deleted.

This file was deleted.

@@ -1,12 +1,13 @@
[ar_dom_overlay.https.html]
expected: ERROR
[Ensures DOM Overlay element selection works]
expected: FAIL

[Ensures DOM Overlay feature works for immersive-ar]
expected: FAIL

[Ensures DOM Overlay input deduplication works]
expected: FAIL
expected: TIMEOUT

[Ensures DOM Overlay feature works for immersive-ar, body element]
expected: FAIL
@@ -15,11 +16,11 @@
expected: FAIL

[Ensures DOM Overlay Fullscreen API doesn't change DOM overlay]
expected: FAIL
expected: NOTRUN
[Ensures DOM Overlay feature works for immersive-ar, div element]
expected: FAIL
[Ensures DOM Overlay interactions on cross origin iframe are ignored]
expected: FAIL
expected: NOTRUN
@@ -1,2 +1,4 @@
[ar_dom_overlay_hit_test.https.html]
expected: ERROR
[Ensures DOM Overlay interactions on cross origin iframe do not cause hit test results to come up]
expected: FAIL

@@ -14609,21 +14609,21 @@
},
"webxr": {
"create_session.html": [
"af76c5a812d7d05a0158194560933def3fbdb9f9",
"5b5d485b372bfffb22204bc162c9e182306395cb",
[
null,
{}
]
],
"layers.html": [
"31f4b6bd51cfcca47666331857bd2bbdf84d2f5e",
"49821d7661f92bc9cf22232d3fcb391c2cdc7295",
[
null,
{}
]
],
"obtain_frame.html": [
"74fda5bad43e8ea95552e65380e83952680e8469",
"d9ff25729f9cdfd348e7c9914ce2dacd231e13a0",
[
null,
{}
@@ -8,7 +8,7 @@
<script>
async_test(function(t) {
navigator.xr.test.simulateDeviceConnection({
supportsImmersive: true,
supportedModes: ["immersive-vr"],
views: TEST_VIEWS,
viewerOrigin: {position: [0.5, 0.1, 0.1], orientation: [1, 0, 0, 1] }
}).then((m) => {
@@ -12,7 +12,7 @@
let gl = canvas.getContext('webgl');
promise_test(async function() {
let mock = await navigator.xr.test.simulateDeviceConnection({
supportsImmersive: true,
supportedModes: ["immersive-vr"],
views: TEST_VIEWS,
viewerOrigin: {position: [0.5, 0.1, 0.1], orientation: [1, 0, 0, 1] }
});
@@ -12,7 +12,7 @@
let gl = canvas.getContext('webgl');
promise_test(async function() {
let mock = await navigator.xr.test.simulateDeviceConnection({
supportsImmersive: true,
supportedModes: ["immersive-vr"],
views: TEST_VIEWS,
viewerOrigin: {position: [0.5, 0.1, 0.1], orientation: [1, 0, 0, 1] }
});
ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.