mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Add dom.webxr.enabled pref
This commit is contained in:
parent
4b2fa5ef08
commit
241d93340b
14 changed files with 32 additions and 24 deletions
|
@ -633,7 +633,6 @@ impl VRDisplay {
|
|||
|
||||
fn handle_raf(&self, end_sender: &Sender<Result<(f64, f64), ()>>) {
|
||||
self.frame_data_status.set(VRFrameDataStatus::Waiting);
|
||||
|
||||
|
||||
let now = self.global().as_window().Performance().Now();
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
// https://immersive-web.github.io/webxr/#xr-interface
|
||||
[SecureContext, Exposed=Window]
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XR: EventTarget {
|
||||
// Methods
|
||||
Promise<void> supportsSessionMode(XRSessionMode mode);
|
||||
|
@ -15,7 +15,7 @@ interface XR: EventTarget {
|
|||
|
||||
[SecureContext]
|
||||
partial interface Navigator {
|
||||
[SameObject, Pref="dom.webvr.enabled"] readonly attribute XR xr;
|
||||
[SameObject, Pref="dom.webxr.enabled"] readonly attribute XR xr;
|
||||
};
|
||||
|
||||
enum XRSessionMode {
|
||||
|
|
|
@ -4,9 +4,10 @@
|
|||
|
||||
// https://immersive-web.github.io/webxr/#xrframe-interface
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRFrame {
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRFrame {
|
||||
readonly attribute XRSession session;
|
||||
|
||||
XRViewerPose? getViewerPose(optional XRReferenceSpace referenceSpace);
|
||||
// XRInputPose? getInputPose(XRInputSource inputSource, optional XRReferenceSpace referenceSpace);
|
||||
};
|
||||
};
|
||||
|
|
|
@ -4,4 +4,5 @@
|
|||
|
||||
// https://immersive-web.github.io/webxr/#xrlayer-interface
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRLayer {};
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRLayer {};
|
||||
|
|
|
@ -14,7 +14,8 @@ dictionary XRReferenceSpaceOptions {
|
|||
required XRReferenceSpaceType type;
|
||||
};
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRReferenceSpace : XRSpace {
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRReferenceSpace : XRSpace {
|
||||
// attribute XRRigidTransform originOffset;
|
||||
// attribute EventHandler onreset;
|
||||
};
|
||||
|
|
|
@ -4,10 +4,10 @@
|
|||
|
||||
// https://immersive-web.github.io/webxr/#xrrigidtransform-interface
|
||||
|
||||
[SecureContext, Exposed=Window]
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
// [Constructor(optional DOMPointInit position, optional DOMPointInit orientation)]
|
||||
interface XRRigidTransform {
|
||||
// readonly attribute DOMPointReadOnly position;
|
||||
// readonly attribute DOMPointReadOnly orientation;
|
||||
// readonly attribute Float32Array matrix;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -12,7 +12,7 @@ enum XREnvironmentBlendMode {
|
|||
|
||||
callback XRFrameRequestCallback = void (DOMHighResTimeStamp time, XRFrame frame);
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRSession : EventTarget {
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"] interface XRSession : EventTarget {
|
||||
// // Attributes
|
||||
readonly attribute XRSessionMode mode;
|
||||
// readonly attribute XRPresentationContext outputContext;
|
||||
|
@ -40,4 +40,4 @@ callback XRFrameRequestCallback = void (DOMHighResTimeStamp time, XRFrame frame)
|
|||
// attribute EventHandler oninputsourceschange;
|
||||
// attribute EventHandler onselectstart;
|
||||
// attribute EventHandler onselectend;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRSpace : EventTarget {
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRSpace : EventTarget {
|
||||
// XRRigidTransform? getTransformTo(XRSpace other);
|
||||
};
|
||||
};
|
||||
|
|
|
@ -14,7 +14,7 @@ dictionary XRStationaryReferenceSpaceOptions : XRReferenceSpaceOptions {
|
|||
required XRStationaryReferenceSpaceSubtype subtype;
|
||||
};
|
||||
|
||||
[SecureContext, Exposed=Window]
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRStationaryReferenceSpace: XRReferenceSpace {
|
||||
// readonly attribute XRStationaryReferenceSpaceSubtype subtype;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -9,9 +9,10 @@ enum XREye {
|
|||
"right"
|
||||
};
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRView {
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRView {
|
||||
readonly attribute XREye eye;
|
||||
readonly attribute Float32Array projectionMatrix;
|
||||
readonly attribute Float32Array viewMatrix;
|
||||
// readonly attribute XRRigidTransform transform;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -4,9 +4,10 @@
|
|||
|
||||
// https://immersive-web.github.io/webxr/#xrviewerpose-interface
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRViewerPose {
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRViewerPose {
|
||||
// readonly attribute XRRigidTransform transform;
|
||||
// readonly attribute FrozenArray<XRView> views;
|
||||
// workaround until we have FrozenArray
|
||||
sequence<XRView> views();
|
||||
};
|
||||
};
|
||||
|
|
|
@ -4,9 +4,10 @@
|
|||
|
||||
// https://immersive-web.github.io/webxr/#xrviewport-interface
|
||||
|
||||
[SecureContext, Exposed=Window] interface XRViewport {
|
||||
[SecureContext, Exposed=Window, Pref="dom.webxr.enabled"]
|
||||
interface XRViewport {
|
||||
readonly attribute long x;
|
||||
readonly attribute long y;
|
||||
readonly attribute long width;
|
||||
readonly attribute long height;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -19,7 +19,8 @@ dictionary XRWebGLLayerInit {
|
|||
|
||||
[SecureContext, Exposed=Window, Constructor(XRSession session,
|
||||
XRWebGLRenderingContext context,
|
||||
optional XRWebGLLayerInit layerInit)]
|
||||
optional XRWebGLLayerInit layerInit),
|
||||
Pref="dom.webxr.enabled"]
|
||||
interface XRWebGLLayer : XRLayer {
|
||||
// // Attributes
|
||||
readonly attribute XRWebGLRenderingContext context;
|
||||
|
@ -39,4 +40,4 @@ interface XRWebGLLayer : XRLayer {
|
|||
|
||||
// // Static Methods
|
||||
// static double getNativeFramebufferScaleFactor(XRSession session);
|
||||
};
|
||||
};
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
"windows": {},
|
||||
"vr": {
|
||||
"_comment": "settings specific to VR builds",
|
||||
"dom.webvr.enabled": true
|
||||
"dom.webvr.enabled": true,
|
||||
"dom.webxr.enabled": true
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue