gecko-dev/dom/vr
Kearwood "Kip" Gilbert b3787eec77 Bug 1603825 - Suppress the VR permission UI when no VR runtimes are detected r=daoshengmu,bzbarsky
This patch suppresses VR device access permission prompts for users that do not have any VR runtimes installed.

We could not depend on the existing VR device enumeration functions to suppress the permission prompts, as the
act of enumerating VR devices will result in some hardware physically powering on and software starting up (and staying running)
in the background.

This patch includes logic to spawn the VR process with an additional flag indicating that it should attempt only to detect the
runtimes, without proceeding to enumerate and activate hardware and software.

VRManager now includes an enum to more clearly organize it's state machine model, which now must ensure that the runtime detection
happens on-demand when the VR session support capabilities are first determined.

There is a new pref to disable the suppression of permission prompts for use within permission UI tests on machines without VR runtimes.
Renamed some variables and added comments to make code in nsGlobalWindowInner and Navigator clearer and better represent the updated logic -- to allow the separate detection of VR runtimes and VR session activation. Both the runtime detection and VR
session activity uses VREventObserver to send events to nsGlobalWindowInner.

Differential Revision: https://phabricator.services.mozilla.com/D57568

--HG--
extra : moz-landing-system : lando
2020-01-03 22:47:26 +00:00
..
test Bug 1603825 - Suppress the VR permission UI when no VR runtimes are detected r=daoshengmu,bzbarsky 2020-01-03 22:47:26 +00:00
VRDisplay.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-11-26 14:35:02 +00:00
VRDisplay.h Bug 1565268 - Part 2: Removing mDisplayName/Id from VRDisplay. r=kip 2019-10-29 00:42:52 +00:00
VRDisplayEvent.cpp Bug 1578173 part 4. Switch event subclasses to constructor operations. r=smaug 2019-09-11 14:35:28 +00:00
VRDisplayEvent.h Bug 1578173 part 4. Switch event subclasses to constructor operations. r=smaug 2019-09-11 14:35:28 +00:00
VREventObserver.cpp Bug 1603825 - Suppress the VR permission UI when no VR runtimes are detected r=daoshengmu,bzbarsky 2020-01-03 22:47:26 +00:00
VREventObserver.h Bug 1603825 - Suppress the VR permission UI when no VR runtimes are detected r=daoshengmu,bzbarsky 2020-01-03 22:47:26 +00:00
VRServiceTest.cpp Bug 1570075 - WebXR: Extend VRDisplayState and VRDisplayCapabilityFlags r=imanol 2019-07-31 11:46:48 +00:00
VRServiceTest.h Bug 1289211 - Rename InfallibleTArray to nsTArray in dom/vr/ r=kip 2019-07-10 03:28:30 +00:00
XRPermissionRequest.cpp Bug 1580567 - Implement XR device access permission UI r=fluent-reviewers,bzbarsky,pbz,daoshengmu,imanol 2019-12-12 03:10:51 +00:00
XRPermissionRequest.h Bug 1580567 - Implement XR device access permission UI r=fluent-reviewers,bzbarsky,pbz,daoshengmu,imanol 2019-12-12 03:10:51 +00:00
moz.build Bug 1580567 - Implement XR device access permission UI r=fluent-reviewers,bzbarsky,pbz,daoshengmu,imanol 2019-12-12 03:10:51 +00:00