Граф коммитов

39 Коммитов

Автор SHA1 Сообщение Дата
Kearwood Gilbert d0b2b8da65 Bug 1436791 - Implement gfxVRExternal,r=rbarker
- gfxVRExternal Enables other processes to present
  real or simulated VR hardware to Firefox.
- This functionality is disabled by default, under
  dom.vr.external.enabled.
- VRDisplayInfo, VRControllerInfo, and associated
  structs have been restructured to ensure internal
  state is not exposed via shmem interface.
- Some refactoring to convert structs to
  POD types, enabling them to be located
  in shmem and be memcpy'd.
- Work needed before unpreffing marked
  with "TODO" comments.
MozReview-Commit-ID: FbsusbxuoQ8

--HG--
extra : rebase_source : 8a448169c3f47411c705a4d9fd462a1f9363dfd9
extra : amend_source : e6702549527292e2850d16e8f503f0be9848159f
2018-03-13 17:09:54 -07:00
Kearwood Gilbert 1bed477cca Bug 1407423 - Part 3: Update Puppet Device Implementation,r=daoshengmu
- Update prefs to accomodate tests, disabling
  enumeration throttling
- Updated Puppet display and controller implementation
  to act more like the actual devices.
- Updated tests to ensure that they explicitly
  create a VR mock display and don't create duplicate
  mock displays.

MozReview-Commit-ID: 6RPVqekG2je

--HG--
extra : rebase_source : 9cc9ea116114cc191edbf5a01ac8f84fff9709c4
2017-11-21 14:18:16 -08:00
Kearwood "Kip" Gilbert a9dbddfdba Bug 1407423 - Ensure that any time we have loaded the Oculus runtime libary, we are polling ShouldQuit,r=daoshengmu
- Ensure ovr_GetSessionStatus is polled even when a VR presentation
  is not active.
- When we fail to initialize an Oculus Session or detect VR hardware,
  immediately unload the Oculus Library as we can't poll for ShouldQuit
  without a valid Oculus session.
- When we poll ovr_GetSessionStatus, we are now updating the mounted state
  in VRDisplayInfo::mIsMounted.
- Added prefs to control enumeration throttling and timeout to release
  VR hardware when inactive.
- Some refactoring to make frame loop more understandable and less
  brittle.
- When throttling enumeration, we ensure that all other VR apis
  also throttle enumeration so that they don't pick up the same device
  during throttling.
- Some long functions in VRManager have been broken up and
  had their inner-workings documented in more detail.

MozReview-Commit-ID: CEYwwQ9mYd0

--HG--
extra : rebase_source : b2ab0dfc17b9ddc06f6afafdf69497fb9418fd47
2017-10-10 14:42:37 -07:00
Daosheng Mu 4b8304ef73 Bug 1358247 - Reply VR vibrate promises to the individual channels; r=kip
MozReview-Commit-ID: 4NwYNkwKUMR

--HG--
extra : rebase_source : 9e9d8ddcb0f91a3745e6ed5e614bb696b6d950af
2017-11-30 19:37:07 +08:00
Phil Ringnalda e0e1cf4354 Backed out 4 changesets (bug 1406327) for crashing other tests, crashing itself, and assertion failures
Backed out changeset 471c710b19b1 (bug 1406327)
Backed out changeset 5890bb3a0d97 (bug 1406327)
Backed out changeset 63c8ee57e38c (bug 1406327)
Backed out changeset 345972733daa (bug 1406327)

MozReview-Commit-ID: IwWx11QSuS4
2017-11-01 21:44:12 -07:00
Daosheng Mu f10ab3c49f Bug 1406327 - Part 4: RefreshVRDisplays needs to be at VRListenerThread; r=kip
MozReview-Commit-ID: KuhPFqMhTDB

--HG--
extra : rebase_source : 53dac47c5ede72acbe2760f056ca88f8cbc0c6b9
2017-11-01 22:15:06 +08:00
Daosheng Mu 292c24950b Bug 1406327 - Part 2: When loading VR content, launching the VR listener thread; r=kip
MozReview-Commit-ID: IyBzJyDEVdv

--HG--
extra : rebase_source : d626c4b0ce7c5ca2a1bda6cb6b8d0d42a4d09e1d
2017-10-26 17:28:37 +08:00
Attila Craciun cbf1069efe Backed out changeset aa67335856eb (bug 1406327) for failing dom/vr/test/mochitest/test_vrController_displayId.html r=backout on a CLOSED TREE. 2017-11-01 11:15:01 +02:00
Daosheng Mu 6cded82cb0 Bug 1406327 - Part 2: When loading VR content, launching the VR listener thread; r=kip
MozReview-Commit-ID: IyBzJyDEVdv

--HG--
extra : rebase_source : c4d11a77045d8baef94002e4f42e8cea5148e900
2017-10-26 17:28:37 +08:00
Phil Ringnalda 1e756a27c8 Backed out 3 changesets (bug 1406327) for bustage in tests that run after the VM tests
Backed out changeset 1784a194ced8 (bug 1406327)
Backed out changeset 44cb5451bbde (bug 1406327)
Backed out changeset e1e57d418c14 (bug 1406327)

MozReview-Commit-ID: HUN1rEqAIWf
2017-10-31 22:33:41 -07:00
Daosheng Mu 03cf16992f Bug 1406327 - Part 2: When loading VR content, launching the VR listener thread; r=kip
MozReview-Commit-ID: IyBzJyDEVdv

--HG--
extra : rebase_source : c4d11a77045d8baef94002e4f42e8cea5148e900
2017-10-26 17:28:37 +08:00
Daniel Holbert 126bd9e1a4 Bug 1412427 part 8: (automated patch) Switch a bunch of C++ files in gfx to use our standard mode lines. r=jrmuizel
This patch was generated automatically by the "modeline.py" script, available
here: https://github.com/amccreight/moz-source-tools/blob/master/modeline.py

For every file that is modified in this patch, the changes are as follows:
 (1) The patch changes the file to use the exact C++ mode lines from the
     Mozilla coding style guide, available here:
https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Coding_Style#Mode_Line

 (2) The patch deletes any blank lines between the mode line & the MPL
     boilerplate comment.

 (3) If the file previously had the mode lines and MPL boilerplate in a
     single contiguous C++ comment, then the patch splits them into
     separate C++ comments, to match the boilerplate in the coding style.

MozReview-Commit-ID: 77D61xpSmIl

--HG--
extra : rebase_source : c6162fa3cf539a07177a19838324bf368faa162b
2017-10-27 16:10:06 -07:00
Coroiu Cristina 9ca76dcb7a Backed out changeset b7a07167905c::2932c914e223 (bug 1406327) for failing in dom/vr/test/mochitest/test_vrController_displayId.html r=backout a=backout on a CLOSED TREE
Backed out changeset 2932c914e223 (bug 1406327)
Backed out changeset cfbc6262a064 (bug 1406327)
Backed out changeset b7a07167905c (bug 1406327)
2017-10-30 14:51:52 +02:00
Daosheng Mu 10a11e397e Bug 1406327 - Part 2: When loading VR content, launching the VR listener thread; r=kip
MozReview-Commit-ID: IyBzJyDEVdv

--HG--
extra : rebase_source : 415b474b94e3b71ac7cc111d4f59a820ebc8cae0
2017-10-26 17:28:37 +08:00
Kearwood "Kip" Gilbert c5a2279e20 Bug 1400457 - Isolate VR Rendering from Compositor r=daoshengmu,jgilbert
- WebVR is no longer dependent on PTexture, TextureParent,
  TextureHost, and TextureChild.  It continues to use TextureClient
  for pooling and coordinating locks with other Gecko code.
- PreserveDrawingBuffer now behaving correctly for 2d display mirroring
- Preparation for separating to VR process
MozReview-Commit-ID: 2RGOulCInSu

--HG--
extra : rebase_source : 3542b804c3def36fa74541be32d0e7cbc9698641
2017-07-21 17:30:34 -07:00
Kearwood "Kip" Gilbert bcd45085c6 Bug 1394561 - Ensure WebVR content can catch up when IPC messages are delayed r=daoshengmu,kanru
MozReview-Commit-ID: F4NKtyaNwEo

--HG--
extra : rebase_source : fb7b2fc51de6b9cf94e6d6bb1837464ec7ea528b
2017-08-31 16:29:14 -07:00
Chih-Yi Leu 47a2617b3f Bug 1381378: Refactor - Isolate gamepad index and GamepadServiceType from GamepadChangeEvent; r=daoshengmu
MozReview-Commit-ID: IFjvDsl6vlY

--HG--
extra : rebase_source : 2b9add020e182acb03c01bd5c55742dc7860625d
2017-07-17 11:44:39 +08:00
Daosheng Mu 3980ed0fd6 Bug 1375816 - Part 4: VRController displayId attribute testcase; r=kip
MozReview-Commit-ID: KkMXsTDRnQO

--HG--
extra : rebase_source : 1bb85ecddfea7695ec310d19a1f4f1f05543a4d6
2017-07-14 17:08:15 +08:00
Sebastian Hengst b5972de663 Backed out changeset 498baf1613db (bug 1375816) 2017-07-18 11:48:22 +02:00
Daosheng Mu f2d37e1ed5 Bug 1375816 - Part 4: VRController displayId attribute testcase; r=kip
MozReview-Commit-ID: KkMXsTDRnQO

--HG--
extra : rebase_source : d4a91a5e8a33de2f65c4c6ce23dab6ccdab13952
2017-07-14 17:08:15 +08:00
Wes Kocher eaeabd21b5 Backed out 4 changesets (bug 1375816) for various failures including builds busted in gfxVROculus.cpp a=backout
Backed out changeset 73619b7ce23d (bug 1375816)
Backed out changeset dd09fc501f90 (bug 1375816)
Backed out changeset fd4517198d6c (bug 1375816)
Backed out changeset e15e060f034c (bug 1375816)

MozReview-Commit-ID: 9VXOC0V45NE
2017-07-17 23:18:21 -07:00
Daosheng Mu 8277d4012f Bug 1375816 - Part 4: VRController displayId attribute testcase; r=kip
MozReview-Commit-ID: KkMXsTDRnQO

--HG--
extra : rebase_source : bec4dbe0bc8a791f39cd80444aa5f41da38bbc14
2017-07-14 17:08:15 +08:00
Daosheng Mu a839377259 Bug 1343730 - Part 1: Support submitFrame and encode the frame as a base64 image in VRPuppet; r=kip
MozReview-Commit-ID: jHKHSoNo6X

--HG--
extra : rebase_source : df5050a488e19af81ebd240c5fb5fdfd30b46907
2017-05-23 16:55:30 +08:00
Kearwood Gilbert 5c1b11f1db Bug 1355654 - VRManager will now wait for 30 seconds of inactivity before releasing VR displays, rather than doing it instantaneously. r=daoshengmu
- This corrects link traversal and improves performance when
  entering and exiting VR very often.

MozReview-Commit-ID: D30NQdnpzMF

--HG--
extra : rebase_source : 4f2486d98e6d0912185cd93537ea248a1ad876c5
2017-04-11 22:12:22 -07:00
Kearwood Gilbert 043d85c921 Bug 1351048 - Do not load VR libraries until necessary, Oculus cleanup r=daoshengmu
- I have refactored the Oculus and OpenVR interfaces in gfx/vr
  so that initialization of the VR libraries only happens once
  a WebVR site is detected.
- The Oculus interface has been cleaned up and updated to unload the Oculus
  runtime library when not in use.
- The browser can now re-connect to Oculus home if it was restarted, without
  restarting the browser.
- We no longer submit a black frame at the end of VR presentation, as this
  appears to be handled by the latest Oculus runtime automatically.
- As we only hold on to the Oculus runtime when needed, this should
  reduce the likelihood of the GPU process being killed by the Oculus
  software updater.

MozReview-Commit-ID: AyWeD4CxXLD

--HG--
extra : rebase_source : 9eae07ef30b1a7559b5fe80e6698c248a55b970e
2017-03-30 09:35:49 -04:00
Daosheng Mu 62781e3b7d Bug 1299937 - Part 6: Handle Stop vibrating when the window defoucses; r=qdot
MozReview-Commit-ID: Kvd40jnSPvK

--HG--
extra : rebase_source : f9ce4c68fd07376b8e18cbab08718c49d6fed455
2017-03-07 10:17:57 +08:00
Daosheng Mu c1d89a986e Bug 1299937 - Part 4: Handling vibrate haptic promise in VRManager; r=qdot
MozReview-Commit-ID: 3KZ8MNx3Dnq

--HG--
extra : rebase_source : 1b11f7948da7477e31f7448878a6d5874ba69087
2017-02-02 14:59:44 +08:00
Daosheng Mu 3905da3aea Bug 1299937 - Part 3: Implement haptic pulse for OpenVR controller; r=kip,qdot
MozReview-Commit-ID: TUIbJpyng4

--HG--
extra : rebase_source : e449c85d0e8f9a64a63929d1211dbca3fed8a4b6
2017-02-02 14:57:58 +08:00
Daosheng Mu 73147a8a4c Bug 1323328 - Part 4: Delay create VRSystemManagerPuppet for making it only be run for tests; r=kip
MozReview-Commit-ID: 6RxFheaP1sg

--HG--
extra : rebase_source : 6ceccf9068b8d38e94890f5543c512d5b40639bf
2017-03-04 01:27:22 +08:00
Daosheng Mu 658e2d193c Bug 1332989 - Using VRSystemManager to manage vr displays and controllers; r=kip
MozReview-Commit-ID: 7M1ihvCpU9g

--HG--
extra : rebase_source : aba82b0aa8ab67860418a39dd0eaa21ea18e563e
2017-01-24 17:49:11 +08:00
Daosheng Mu 9f9b153369 Bug 1321505 - Clean VR controllers when nsGlobalWindow no longer uses gamepads; r=kip
MozReview-Commit-ID: IlAa5vDqwAE

--HG--
extra : rebase_source : 42e444083e2d43334147fb945643d12c4403af34
2016-12-01 14:16:16 +08:00
Daosheng Mu 1c5ae68a31 Bug 1299928 - Part 5: Handle gamepad events in Vsync time; r=kip
MozReview-Commit-ID: Ndt3zajkli

--HG--
extra : rebase_source : 1e14a470ea3aede5c167f7699db0f3b8bdfdfa10
2016-10-07 17:00:45 +08:00
Daosheng Mu e01d3ca1b4 Bug 1299928 - Part 4: Implement VRControllerManager; r=kip
MozReview-Commit-ID: 3bItvKV2HB

--HG--
extra : rebase_source : 2c41e08774b67c1b369bf20fec4f96597f6214ad
2016-10-07 16:58:01 +08:00
Kearwood (Kip) Gilbert 2743764335 Bug 1306427 - Remove pose parameter from VRDisplay.submitFrame,r=smaug,r=gw280
MozReview-Commit-ID: LZSDm73XrIa

--HG--
extra : rebase_source : 9627a96ad333e952795ed70af0f8878a21c3c697
2016-09-30 16:43:24 -07:00
kearwood e5a5a99d23 Bug 1284357 - Part 2: Implement Navigator.activeVRDisplays,r=gw280
- WebVR 1.0 includes a new property added to Navigator,
  activeVRDisplays
- Please apply the patchset in Bug 1250244 first.

MozReview-Commit-ID: 6wffkwvKllW

--HG--
extra : rebase_source : 79c960b206c14b8380786000fcbc2da52bc3bdab
2016-07-04 15:52:21 -07:00
Kearwood (Kip) Gilbert 434f167559 Bug 1250244 - Part 7: Implement WebVR 1.0 API,r=bz
MozReview-Commit-ID: JTOmaWePlJq
2016-02-24 15:54:50 -08:00
Kearwood (Kip) Gilbert 0fa828c884 Bug 1250244 - Part 5: Rename VRDevice to VRDisplay,r=bz
- In order to reduce the size of the following patches
  and increase their readability, we rename VRDevice
  to VRDisplay here first.

MozReview-Commit-ID: 3pv8scdIi5w
2016-04-12 17:39:28 -07:00
Jonathan Watt b15368cfcb Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
Kearwood (Kip) Gilbert 0c83ce5c05 Bug 1182048 - Part 2: Implement e10s support for WebVR,r=vlad 2015-09-17 14:23:13 -07:00