141 Commits

Author SHA1 Message Date
Kearwood Gilbert
9136ce65cf Bug 1614496 - Implement WebXR Core Module DOM Interfaces r=jgilbert,daoshengmu,webidl,smaug,baku,imanol
Implement DOM interfaces for the WebXR Core Module. Additional work to implement the WebXR Core Module are marked with TODO (Bug #) comments within the patch and must be landed before enabling the dom.vr.webxr.enabled flag.

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

--HG--
extra : moz-landing-system : lando
2020-04-06 19:33:32 +00:00
sotaro
cecac7d080 Bug 1611886 - Add VRManagerParent::Shutdown() r=nical
Differential Revision: https://phabricator.services.mozilla.com/D61144

--HG--
extra : moz-landing-system : lando
2020-02-20 06:46:11 +00:00
Brindusan Cristian
615e78b5fc Backed out changeset a91870b97f09 (bug 1611886) for xpcshell failures at test_browserid_identity.js. CLOSED TREE 2020-02-11 09:03:03 +02:00
sotaro
c3615f343f Bug 1611886 - Add VRManagerParent::Shutdown() r=nical
Differential Revision: https://phabricator.services.mozilla.com/D61144

--HG--
extra : moz-landing-system : lando
2020-02-05 09:42:37 +00:00
Nazım Can Altınova
d8afe0647a Bug 1609708 - Rename PROFILER_TRACING to PROFILER_TRACING_MARKER. r=gerald
Depends on D60229

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

--HG--
extra : moz-landing-system : lando
2020-01-17 21:29:15 +00:00
Sylvestre Ledru
cc2040bf21 Bug 1605934 - Use nested namespaces r=sg
Done with:
./mach static-analysis check --checks="-*, modernize-concat-nested-namespaces" --fix .
and then clang-format on the files

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

--HG--
extra : moz-landing-system : lando
2020-01-18 13:48:34 +00:00
Dorel Luca
506e65bcab Backed out changeset bbb39655cf71 (bug 1605934) for build bustage in widget/gtk/mozwayland/mozwayland.c 2020-01-18 15:39:55 +02:00
Sylvestre Ledru
6689a37527 Bug 1605934 - Use nested namespaces r=sg
Done with:
./mach static-analysis check --checks="-*, modernize-concat-nested-namespaces" --fix .
and then clang-format on the files

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

--HG--
extra : moz-landing-system : lando
2020-01-18 13:16:39 +00:00
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
Daosheng Mu
f61dc99e7b Bug 1603539 - Part 2: Sending telemetry via VR shared memory. r=kip,thomasmo,chutten
Differential Revision: https://phabricator.services.mozilla.com/D57378

--HG--
extra : moz-landing-system : lando
2019-12-23 20:48:17 +00:00
Gurzau Raul
a8c7fd6201 Backed out 2 changesets (bug 1603539) for build bustage at VRManager.cpp on a CLOSED TREE.
Backed out changeset eb9ff96b66d7 (bug 1603539)
Backed out changeset 75348f5742c6 (bug 1603539)
2019-12-23 21:42:49 +02:00
Daosheng Mu
9fdd26d118 Bug 1603539 - Part 2: Sending telemetry via VR shared memory. r=kip,thomasmo,chutten
Differential Revision: https://phabricator.services.mozilla.com/D57378

--HG--
extra : moz-landing-system : lando
2019-12-23 14:28:44 +00:00
Imanol Fernandez
53835215d9 Bug 1592610 - Set Idle state in VRManager when the app goes to background on Android. r=kip,rbarker
Set Idle state in VRManager when the app goes to background on Android.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 19:26:38 +00:00
Imanol Fernandez
61f313ef89 Bug 1591949 - Update VRManager VRShmem if it's not ready after calling OpenShmem on Android r=kip,rbarker
Update VRManager VRShmem if it's not ready after calling OpenShmem on Android

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

--HG--
extra : moz-landing-system : lando
2019-10-28 18:33:21 +00:00
Daosheng Mu
57782480e1 Bug 1586110 - VRManager should only be called in parent process or GPU process. r=kip
Differential Revision: https://phabricator.services.mozilla.com/D48127

--HG--
extra : moz-landing-system : lando
2019-10-17 18:31:12 +00:00
Imanol Fernandez
7c0ea68b6d Bug 1587366 - Do not call VRManager::Shutdown immediately when the app is paused. r=daoshengmu,kip
Do not call VRManager::Shutdown immediately when the app is paused.

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

--HG--
extra : moz-landing-system : lando
2019-10-16 23:12:05 +00:00
Imanol Fernandez
2d92d3cf9a Bug 1587366 - Fix VRManagerParent::GetVRActiveStatus race condition: Notify VRActiveStatus after a the VREventObserver is created. r=rbarker,daoshengmu
Notify VRActiveStatus after a the VREventObserver is created to prevent the VRManagerParent::GetVRActiveStatus race condition.
Call VRManager::Shutdown() when the app goes to background instead of calling it in the foreground event due to the inactivity timer.

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

--HG--
extra : moz-landing-system : lando
2019-10-11 15:58:39 +00:00
Daosheng Mu
125bfdb32c Bug 1581988 - Making VR display enumerationCompleted be false when doing enumeration. r=kip
If VR process haven't launched yet, we couldn't get available VR displays and its states, so we need to make enumationCompleted to be false, and ask it do the enumeration again.

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

--HG--
extra : moz-landing-system : lando
2019-09-20 00:26:23 +00:00
thomasmo
b81f65bc8d Bug 1570230 - Crash in [@ mozilla::gfx::VRShMem::JoinShMem] r=kip
Bug 1570440 - [Web content] Firefox Crashes on CNN.COM (Windows7)

This change addresses an issue where VRShMem can be in an invalid state when
there is no VR process available. In this case, the VRExternalShmem struct is
allocated on the heap rather than accessed via shared memory. When VRService
stops, it clears this pointer, but cannot re-access it when it restarts. Thus,
this results in a nullptr crash when a tab Enters, Exits, and Re-enters VR.

The fix is to distinguish between in-proc heap allocation vs cross-proc shared
memory so that VRService can decide to make the call to LeaveShMem in its Stop
function. This will keep the heap allocation alive across service restarts and
prevent the null crash.

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

--HG--
extra : moz-landing-system : lando
2019-08-08 17:57:34 +00:00
Narcis Beleuzu
3830ded867 Backed out changeset 87890c29a8ea (bug 1570230) for crashes on mozilla::gfx::VRShMem::CreateShMem(bool) . CLOSED TREE 2019-08-08 01:19:51 +03:00
thomasmo
76f4d1e6ef Bug 1570230 - Crash in [@ mozilla::gfx::VRShMem::JoinShMem] r=kip
Bug 1570440 - [Web content] Firefox Crashes on CNN.COM (Windows7)

This change addresses an issue where VRShMem can be in an invalid state when
there is no VR process available. In this case, the VRExternalShmem struct is
allocated on the heap rather than accessed via shared memory. When VRService
stops, it clears this pointer, but cannot re-access it when it restarts. Thus,
this results in a nullptr crash when a tab Enters, Exits, and Re-enters VR.

The fix is to distinguish between in-proc heap allocation vs cross-proc shared
memory so that VRService can decide to make the call to LeaveShMem in its Stop
function. This will keep the heap allocation alive across service restarts and
prevent the null crash.

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

--HG--
extra : moz-landing-system : lando
2019-08-07 19:23:33 +00:00
Imanol Fernandez
0bf3c0b8ac Bug 1570671 - Stop VRManager timer tasks when the application goes to background. r=kip
Stop VRManager timer tasks when the application goes to background.

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

--HG--
extra : moz-landing-system : lando
2019-08-02 22:13:56 +00:00
Ciure Andrei
78c513784e Backed out changeset 9ab4ca317e30 (bug 1570671) for causing VRManager.cpp bustages CLOSED TREE 2019-08-02 03:16:18 +03:00
Imanol Fernandez
e2e9ce9c61 Bug 1570671 - Stop VRManager timer tasks when the application goes to background. r=kip
Stop VRManager timer tasks when the application goes to background.

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

--HG--
extra : moz-landing-system : lando
2019-08-01 17:12:16 +00:00
Imanol Fernandez
1f32c478c3 Bug 1569622 - Call VRManager::StartFrame directly instead of using a PostTask on Android. r=kip,rbarker
Call VRManager::StartFrame directly instead of using a PostTask on Android.

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

--HG--
extra : moz-landing-system : lando
2019-07-30 00:11:37 +00:00
thomasmo
a4f1b3fdcd Bug 1563233 - Update VRManager to consume VRShMem r=kip,daoshengmu
This change replaces and removes code in VRManager that was refactored into the
new VRShMem class.

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

--HG--
extra : moz-landing-system : lando
2019-07-29 14:30:54 +00:00
Nicholas Nethercote
18fae65f38 Bug 1563139 - Remove StaticPrefs.h. r=glandium
This requires replacing inclusions of it with inclusions of more specific prefs
files.

The exception is that StaticPrefsAll.h, which is equivalent to StaticPrefs.h,
and is used in `Codegen.py` because doing something smarter is tricky and
suitable for a follow-up. As a result, any change to StaticPrefList.yaml will
still trigger recompilation of all the generated DOM bindings files, but that's
still a big improvement over trigger recompilation of every file that uses
static prefs.

Most of the changes in this commit are very boring. The only changes that are
not boring are modules/libpref/*, Codegen.py, and ServoBindings.toml.

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

--HG--
extra : moz-landing-system : lando
2019-07-26 01:10:23 +00:00
Nicholas Nethercote
7974362afd Bug 1567329 - Append _AtStartup to once static pref getters. r=erahm
Currently it's completely unclear at use sites that the getters for `once`
static prefs return the pref value from startup, rather than the current pref
value. (Bugs have been caused by this.) This commit improves things by changing
the getter name to make it clear that the pref value obtained is from startup.

This required changing things within libpref so it distinguishes between the
"base id" (`foo_bar`) and the "full id" (`foo_bar` or
`foo_bar_DoNotUseDirectly` or `foo_bar_AtStartup` or
`foo_bar_AtStartup_DoNotUseDirectly`; the name used depends on the `mirror` and
`do_not_use_directly` values in the YAML definition.) The "full id" is used in
most places, while the "base id" is used for the `GetPrefName_*` and
`GetPrefDefault_*` functions.

(This is a nice demonstration of the benefits of the YAML file, BTW. Making
this change with the old code would have involved adding an entry to every
single pref in StaticPrefList.h.)

The patch also rejigs the comment at the top of StaticPrefList.yaml, to clarify
some things.

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

--HG--
extra : moz-landing-system : lando
2019-07-22 02:10:14 +00:00
Kearwood "Kip" Gilbert
d016bb0e3a Bug 1566285 - VRManager::PullState will no longer block when no wait condition is passed and enumeration has not yet completed. r=daoshengmu
Differential Revision: https://phabricator.services.mozilla.com/D38137

--HG--
extra : moz-landing-system : lando
2019-07-16 00:54:30 +00:00
Coroiu Cristina
e1d724d2f5 Backed out changeset 3179c40a2a25 (bug 1563233) for wpt failures at webvr/webvr-enabled-by-feature-policy-attribute-redirect-on-load.https.sub.html 2019-07-15 06:29:11 +03:00
thomasmo
f8ab88e23d Bug 1563233 - Update VRManager to consume VRShMem r=kip,daoshengmu
This change replaces and removes code in VRManager that was refactored into the
new VRShMem class.

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

--HG--
extra : moz-landing-system : lando
2019-07-14 13:26:39 +00:00
Narcis Beleuzu
83334f37bc Backed out changeset 1740dc9a710c (bug 1563233) for mochitest failures on VRManager.cpp . CLOSED TREE 2019-07-14 00:22:31 +03:00
thomasmo
aaf1d1bfa5 Bug 1563233 - Update VRManager to consume VRShMem r=kip,daoshengmu
This change replaces and removes code in VRManager that was refactored into the
new VRShMem class.

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

--HG--
extra : moz-landing-system : lando
2019-07-13 13:09:03 +00:00
Barret Rennie
420c8e890a Bug 1289211 - Rename InfallibleTArray to nsTArray in gfx/vr/ r=kip
Differential Revision: https://phabricator.services.mozilla.com/D36956

--HG--
extra : moz-landing-system : lando
2019-07-10 03:29:57 +00:00
Daosheng Mu
5b5df637b1 Bug 1564203 - Clear VR external shared memory when recreating a new VR process. r=kip
Differential Revision: https://phabricator.services.mozilla.com/D37332

--HG--
extra : moz-landing-system : lando
2019-07-08 23:07:42 +00:00
Kearwood "Kip" Gilbert
816af12bb5 Bug 1466702 - Refactor / reimplement gfxVRPuppet and VRServiceTest to use gfxVRExternal r=daoshengmu,thomasmo,bzbarsky
gfxVRPuppet will be replaced with a fully asynchronous puppet automation that runs in the VR process.

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

--HG--
extra : moz-landing-system : lando
2019-06-28 21:19:54 +00:00
Nicholas Nethercote
84b32d3654 Bug 1561491 - Make browser.* and dom.vr.* static prefs follow the naming convention. r=KrisWright
The patch also removes the dom.vr.oculus.quit.timeout pref, because it's
unused.

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

--HG--
extra : rebase_source : bd16ed5ff0b7c2b4f8e653e9835610b25b14a39f
2019-06-25 16:32:29 +10:00
Boris Zbarsky
d2959ecb98 Bug 1553018 part 2. Make various gfx preferences bindings use in Pref annotations on interfaces follow the StaticPrefs naming convention for getters. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D32943

--HG--
extra : moz-landing-system : lando
2019-05-30 17:21:57 +00:00
Jean-Yves Avenard
23436e1811 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-26 14:30:14 +00:00
Jean-Yves Avenard
04a34db033 Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

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

--HG--
extra : moz-landing-system : lando
2019-05-26 14:29:42 +00:00
Gurzau Raul
967bc2a754 Backed out 31 changesets (bug 1552643, bug 1550422) for xpcshell crash on a CLOSED TREE.
Backed out changeset e30c1aa75529 (bug 1552643)
Backed out changeset caadcd7e02d3 (bug 1552643)
Backed out changeset aa7086ab09be (bug 1552643)
Backed out changeset 0b4029671710 (bug 1550422)
Backed out changeset a16295296035 (bug 1550422)
Backed out changeset 3b70307c0db5 (bug 1550422)
Backed out changeset 69df7818d4a3 (bug 1550422)
Backed out changeset d98dfc565927 (bug 1550422)
Backed out changeset 6f0997976944 (bug 1550422)
Backed out changeset 0edd264464c2 (bug 1550422)
Backed out changeset 9ea6da7a74ec (bug 1550422)
Backed out changeset f855f9309c8b (bug 1550422)
Backed out changeset 1033546224a7 (bug 1550422)
Backed out changeset ade7384c6186 (bug 1550422)
Backed out changeset 75b04de7e99c (bug 1550422)
Backed out changeset 91c3acdb2454 (bug 1550422)
Backed out changeset 77d2f80257d1 (bug 1550422)
Backed out changeset e0cd10d35327 (bug 1550422)
Backed out changeset 097091082423 (bug 1550422)
Backed out changeset 2f328853c1ab (bug 1550422)
Backed out changeset f92f2cc29cb1 (bug 1550422)
Backed out changeset 6dc82f88333d (bug 1550422)
Backed out changeset c20f66494d69 (bug 1550422)
Backed out changeset 2ba22cddeb6f (bug 1550422)
Backed out changeset 3aa72f89e295 (bug 1550422)
Backed out changeset ab4c4e806977 (bug 1550422)
Backed out changeset 72e5de040dda (bug 1550422)
Backed out changeset 7d3c2d486706 (bug 1550422)
Backed out changeset 132e0b8d8468 (bug 1550422)
Backed out changeset 54c85ac75dd0 (bug 1550422)
Backed out changeset d7ba4a18dd54 (bug 1550422)
2019-05-25 09:07:49 +03:00
Jean-Yves Avenard
8d5f292ab5 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-24 11:32:54 +00:00
Jean-Yves Avenard
af5790cf9b Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

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

--HG--
extra : moz-landing-system : lando
2019-05-25 00:03:32 +00:00
Gurzau Raul
74c555539e Backed out 28 changesets (bug 1550422) for marionette AssertionError and failing browser_policy_hardware_acceleration.js on a CLOSED TREE.
Backed out changeset 5dd10a365ba9 (bug 1550422)
Backed out changeset 529f5be01ab9 (bug 1550422)
Backed out changeset b6861d3badf8 (bug 1550422)
Backed out changeset 059cff1a3dde (bug 1550422)
Backed out changeset 6ada1116b241 (bug 1550422)
Backed out changeset ca67e8e45262 (bug 1550422)
Backed out changeset a1961a51ae44 (bug 1550422)
Backed out changeset 1c90b9cb3ad4 (bug 1550422)
Backed out changeset 285fa46e4f26 (bug 1550422)
Backed out changeset e2938a444234 (bug 1550422)
Backed out changeset 7a930fc51125 (bug 1550422)
Backed out changeset 898ed02804fe (bug 1550422)
Backed out changeset e1b7abc99ae9 (bug 1550422)
Backed out changeset f781d415cef6 (bug 1550422)
Backed out changeset 2fef10a7cce5 (bug 1550422)
Backed out changeset ea64b4d8d4ff (bug 1550422)
Backed out changeset 86a8ba1b755c (bug 1550422)
Backed out changeset 9c0c9e80f309 (bug 1550422)
Backed out changeset 10c153ddbaea (bug 1550422)
Backed out changeset 60fe635ec2c9 (bug 1550422)
Backed out changeset a38796266b28 (bug 1550422)
Backed out changeset 2db647dcdf1c (bug 1550422)
Backed out changeset 952ddac02972 (bug 1550422)
Backed out changeset ba46b53643ec (bug 1550422)
Backed out changeset ca47ef6c59f7 (bug 1550422)
Backed out changeset f45f471a1a40 (bug 1550422)
Backed out changeset 371b4da5b771 (bug 1550422)
Backed out changeset 02fc78890032 (bug 1550422)
2019-05-23 05:59:44 +03:00
Jean-Yves Avenard
2412878bd9 Bug 1550422 - P15. Move Skip and Once gfxPrefs to StaticPrefs. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D31259

--HG--
extra : moz-landing-system : lando
2019-05-22 22:27:37 +00:00
Jean-Yves Avenard
2c0ce1b3ca Bug 1550422 - P12. Convert Live gfxPrefs into StaticPrefs. r=jrmuizel
gfxPrefs Live preferences are almost identical to StaticPrefs.

We leave aside for now those that set a custom change callback as this feature isn't yet supported in StaticPrefs.

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

--HG--
extra : moz-landing-system : lando
2019-05-22 12:43:42 +00:00
Daosheng Mu
0e6aee236e Bug 1537967 - Skipping running refresh driver and compositing in VR mode. r=mstange,kip
MozReview-Commit-ID: 4L3PygFSFCB

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

--HG--
extra : moz-landing-system : lando
2019-04-12 04:42:28 +00:00
Dorel Luca
d285466535 Backed out changeset 553d7f3d8eed (bug 1537967) for Marionette failures in testing/firefox-ui/tests/functional/security/test_mixed_content_page.py 2019-04-11 06:31:36 +03:00
Daosheng Mu
10b30705e6 Bug 1537967 - Skipping running refresh driver and compositing in VR mode. r=mstange,kip
MozReview-Commit-ID: 4L3PygFSFCB

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

--HG--
extra : moz-landing-system : lando
2019-04-10 19:44:18 +00:00
Daosheng Mu
433677bcfa Bug 1522358 - Requery VRDisplayHost from VRManagers instead of using weakptr from the hash table. r=kip
Differential Revision: https://phabricator.services.mozilla.com/D24584

--HG--
extra : moz-landing-system : lando
2019-03-25 17:51:51 +00:00