The WebXR Device API's XRSessionEvent
interface describes an event which indicates the change of the state of an XRSession
. These events occur, for example, when the session ends or the visibility of its context changes.
Constructor
XRSessionEvent()
- Creates and returns a new
XRSessionEvent
object configured using the specifiedXRSessionEventInit
object's values as available.
Properties
In addition to properties inherited from its parent interface, Event
, XRSessionEvent
provides the folllowing:
Methods
While XRSessionEvent
defines no methods, it inherits methods from its parent interface, Event
.
Session event types
The following events are represented using the XRSessionEvent
interface, and are permitted values for its type
property.
end
- Fired at the session when it has ended, after being terminated by the application or the user agent.
visibilitychange
- Fired at the session whenever its visibility state changes.
Examples
This example creates a listiener that watches for the visibility state of the session to change. It reacts by calling a function mySessionVisible()
with a Boolean indicating whether or not the session is visible; this function might, for instance, spin up or reconfigure a worker that handles rendering the scene.
xrSession.addEventListener("visibilitystate", e => { switch(e.session.visibilitystate) { case "visible": case "visible-blurred": mySessionVisible(true); break; case "hidden": mySessionVisible(false); break; } });
Specifications
Specification | Status | Comment |
---|---|---|
WebXR Device API The definition of 'XRSessionEvent' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
XRSessionEvent | Chrome Full support 79 | Edge Full support 79 | Firefox No support No | IE No support No | Opera No support No | Safari No support No | WebView Android No support No | Chrome Android Full support 79 | Firefox Android No support No | Opera Android No support No | Safari iOS No support No | Samsung Internet Android Full support 11.2 |
XRSessionEvent() constructor | Chrome Full support 79 | Edge Full support 79 | Firefox No support No | IE No support No | Opera No support No | Safari No support No | WebView Android No support No | Chrome Android Full support 79 | Firefox Android No support No | Opera Android No support No | Safari iOS No support No | Samsung Internet Android Full support 11.2 |
session | Chrome Full support 79 | Edge Full support 79 | Firefox No support No | IE No support No | Opera No support No | Safari No support No | WebView Android No support No | Chrome Android Full support 79 | Firefox Android No support No | Opera Android No support No | Safari iOS No support No | Samsung Internet Android Full support 11.2 |
Legend
- Full support
- Full support
- No support
- No support