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

Add WebView versions for api.XRSessionMode.immersive-ar #10784

Conversation

queengooborg
Copy link
Contributor

This PR adds real values for WebView Android for the immersive-ar member of the XRSessionMode API, based upon manual testing.

Test Code Used: Copied data from Chrome Android

This PR adds real values for WebView Android for the `immersive-ar` member of the `XRSessionMode` API, based upon manual testing.

Test Code Used: `Copied data from Chrome Android`
@github-actions github-actions bot added the data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API label Jun 5, 2021
Copy link
Contributor

@foolip foolip left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If https://developer.mozilla.org/en-US/docs/Web/API/Navigator/xr is right XR isn't supported on WebView. Can you check which is right?

@queengooborg
Copy link
Contributor Author

queengooborg commented Jun 7, 2021

XR is not supported on WebView, yes, however this is an interface that slipped through the cracks and is still exposed (even if in error), so I'm going off of that. There's a few of these interfaces that are a part of a larger feature set that is mostly disabled, but then there's ones like this that weren't added to not-webview-exposed.txt.

@foolip
Copy link
Contributor

foolip commented Jun 7, 2021

XRSessionMode is an enum in spec and implementation:
https://immersive-web.github.io/webxr/#xrsessionmode-enum
https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/modules/xr/xr_session.idl;l=7;drc=d78a26c4267a178f6ceefb599478692907cd6206

An enum is basically a subset of a string, where only certain strings are allowed and others cause TypeError to be thrown. So what it means for XRSessionMode is really for these strings to work as arguments for one of the two methods here:
https://immersive-web.github.io/webxr/#xrsystem-interface

If those methods aren't supported in WebView, then this enum can't be either.

Aside: I'm skeptical about having enums in BCD at all, but that's for #6810.

@queengooborg queengooborg deleted the api/XRSessionMode/immersive-ar/webview branch June 10, 2021 10:14
@queengooborg
Copy link
Contributor Author

My mistake, I thought I had tested this in the collector as well. I've followed this up with #10926 to set this all to false.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
data:api Compat data for Web APIs. https://developer.mozilla.org/docs/Web/API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants