mirror of
https://github.com/servo/servo.git
synced 2025-09-30 00:29:14 +01:00
script: Move code generation and webidl files to new script_bindings crate. (#35157)
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
This commit is contained in:
parent
a88b59534f
commit
af8d7c2de7
469 changed files with 187 additions and 137 deletions
69
components/script_bindings/webidls/XRSession.webidl
Normal file
69
components/script_bindings/webidls/XRSession.webidl
Normal file
|
@ -0,0 +1,69 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* 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/. */
|
||||
|
||||
// skip-unless CARGO_FEATURE_WEBXR
|
||||
|
||||
// https://immersive-web.github.io/webxr/#xrsession-interface
|
||||
|
||||
enum XREnvironmentBlendMode {
|
||||
"opaque",
|
||||
"additive",
|
||||
"alpha-blend",
|
||||
};
|
||||
|
||||
enum XRVisibilityState {
|
||||
"visible",
|
||||
"visible-blurred",
|
||||
"hidden",
|
||||
};
|
||||
|
||||
enum XRInteractionMode {
|
||||
"screen-space",
|
||||
"world-space",
|
||||
};
|
||||
|
||||
callback XRFrameRequestCallback = undefined (DOMHighResTimeStamp time, XRFrame frame);
|
||||
|
||||
[SecureContext, Exposed=Window, Pref="dom_webxr_enabled"]
|
||||
interface XRSession : EventTarget {
|
||||
// Attributes
|
||||
readonly attribute XRVisibilityState visibilityState;
|
||||
readonly attribute float? frameRate;
|
||||
readonly attribute Float32Array? supportedFrameRates;
|
||||
[SameObject] readonly attribute XRRenderState renderState;
|
||||
[SameObject] readonly attribute XRInputSourceArray inputSources;
|
||||
readonly attribute /*FrozenArray<DOMString>*/ any enabledFeatures;
|
||||
readonly attribute boolean isSystemKeyboardSupported;
|
||||
|
||||
// Methods
|
||||
[Throws] undefined updateRenderState(optional XRRenderStateInit state = {});
|
||||
Promise<undefined> updateTargetFrameRate(float rate);
|
||||
Promise<XRReferenceSpace> requestReferenceSpace(XRReferenceSpaceType type);
|
||||
|
||||
long requestAnimationFrame(XRFrameRequestCallback callback);
|
||||
undefined cancelAnimationFrame(long handle);
|
||||
|
||||
Promise<undefined> end();
|
||||
|
||||
// Events
|
||||
attribute EventHandler onend;
|
||||
attribute EventHandler onselect;
|
||||
attribute EventHandler onsqueeze;
|
||||
attribute EventHandler oninputsourceschange;
|
||||
attribute EventHandler onselectstart;
|
||||
attribute EventHandler onselectend;
|
||||
attribute EventHandler onsqueezestart;
|
||||
attribute EventHandler onsqueezeend;
|
||||
attribute EventHandler onvisibilitychange;
|
||||
attribute EventHandler onframeratechange;
|
||||
|
||||
// AR Module
|
||||
// Attributes
|
||||
readonly attribute XREnvironmentBlendMode environmentBlendMode;
|
||||
readonly attribute XRInteractionMode interactionMode;
|
||||
|
||||
// Hit Test Module
|
||||
// Methods
|
||||
Promise<XRHitTestSource> requestHitTestSource(XRHitTestOptionsInit options);
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue