XRSessionEvent
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.
Properties
In addition to properties inherited from its parent interface, Event
, XRSessionEvent
provides the following:
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 listener 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 |
---|
WebXR Device API # xrsessionevent-interface |
Browser compatibility
BCD tables only load in the browser