gecko-dev/gfx/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
..
external_api Bug 1603539 - Part 2: Sending telemetry via VR shared memory. r=kip,thomasmo,chutten 2019-12-23 20:48:17 +00:00
ipc Bug 1603825 - Suppress the VR permission UI when no VR runtimes are detected r=daoshengmu,bzbarsky 2020-01-03 22:47:26 +00:00
service Bug 1601837 - Using current available slot to access controllerState instead of hand index in OpenVR. r=kip 2019-12-17 22:21:53 +00:00
vrhost Bug 1603539 - Part 2: Sending telemetry via VR shared memory. r=kip,thomasmo,chutten 2019-12-23 20:48:17 +00:00
components.conf Bug 1565295 - Create Command Line Handler for FxR on desktop r=mossop 2019-07-11 21:01:04 +00:00
FxROutputHandler.cpp Bug 1581855:Part 2 - Present VR output to VR Host r=kip,jrmuizel,sotaro,bryce 2019-09-26 12:50:44 +00:00
FxROutputHandler.h Bug 1581855:Part 2 - Present VR output to VR Host r=kip,jrmuizel,sotaro,bryce 2019-09-26 12:50:44 +00:00
FxRWindowManager.cpp Bug 1587942 - Forwarding keyboard show/hide events to VR host API. r=thomasmo,PhilipLamb,masayuki,imanol 2019-10-18 01:24:56 +00:00
FxRWindowManager.h Bug 1587942 - Forwarding keyboard show/hide events to VR host API. r=thomasmo,PhilipLamb,masayuki,imanol 2019-10-18 01:24:56 +00:00
gfxVR.cpp Bug 1466702 - Refactor / reimplement gfxVRPuppet and VRServiceTest to use gfxVRExternal r=daoshengmu,thomasmo,bzbarsky 2019-06-28 21:19:54 +00:00
gfxVR.h Bug 1466702 - Refactor / reimplement gfxVRPuppet and VRServiceTest to use gfxVRExternal r=daoshengmu,thomasmo,bzbarsky 2019-06-28 21:19:54 +00:00
gfxVRMutex.h Bug 1562777 - Refactor ShMem code from VR classes into separate class r=kip 2019-07-03 15:50:28 +00:00
moz.build Bug 1587942 - Forwarding keyboard show/hide events to VR host API. r=thomasmo,PhilipLamb,masayuki,imanol 2019-10-18 01:24:56 +00:00
nsFxrCommandLineHandler.cpp Bug 1602972 - Keep FxR PC window on top r=Gijs 2019-12-11 09:04:18 +00:00
nsFxrCommandLineHandler.h Bug 1565296 - Implement Command Line Handler for FxR on desktop r=mossop,Gijs 2019-07-29 20:11:27 +00:00
VRDisplayClient.cpp Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ r=Ehsan 2019-12-06 09:16:44 +00:00
VRDisplayClient.h Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ r=Ehsan 2019-12-06 09:16:44 +00:00
VRDisplayPresentation.cpp
VRDisplayPresentation.h
VRManager.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
VRManager.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
VRPuppetCommandBuffer.cpp Bug 1570499 - Part 1: Replace MOZ_FALLTHROUGH macro with C++17's [[fallthrough]] attribute. r=froydnj 2019-12-20 07:16:43 +00:00
VRPuppetCommandBuffer.h Bug 1289211 - Rename InfallibleTArray to nsTArray in gfx/vr/ r=kip 2019-07-10 03:29:57 +00:00
VRServiceHost.cpp Bug 1562825 - Checking if puppet is active before initializing VR puppet command buffers. r=kip 2019-11-08 23:46:22 +00:00
VRServiceHost.h Bug 1289211 - Rename InfallibleTArray to nsTArray in gfx/vr/ r=kip 2019-07-10 03:29:57 +00:00
VRShMem.cpp Bug 1603539 - Part 2: Sending telemetry via VR shared memory. r=kip,thomasmo,chutten 2019-12-23 20:48:17 +00:00
VRShMem.h Bug 1603539 - Part 2: Sending telemetry via VR shared memory. r=kip,thomasmo,chutten 2019-12-23 20:48:17 +00:00
VRThread.cpp
VRThread.h