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

43 Коммитов

Автор SHA1 Сообщение Дата
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
Kearwood "Kip" Gilbert 0a5d006f8a Bug 1287944 - Improve interaction with Oculus Home r=daoshengmu
- Now destroying and re-creating Oculus sessions when switching
  between magic window and immersive WebVR (BeginPresent / ExitPresent)
- Now sending flags to Oculus ovr_initilize to specify if Firefox will
  be presenting to the VR display or just using tracking
- Now coordinating oculus session shutdown and restart between the
  VR controllers and the VR display with reference counting.
- Now able to return to Oculus home after using WebVR
- Magic window / non-exclusive sessions no longer take over the VR headset
  causing it to display a message that Firefox.exe is not responding.


MozReview-Commit-ID: EnRsxt6ZSzg

--HG--
extra : rebase_source : 10ba1b76bf75774b8842d99b555319fb5dd7f736
2017-07-04 13:28:27 -07:00
Wes Kocher c119435f8a Backed out changeset f9b033c61423 (bug 1287944) for win debug failures in test_child_assertions.js a=backout
MozReview-Commit-ID: Fem34WwTkY6
2017-07-06 17:03:39 -07:00
Kearwood "Kip" Gilbert d4f04befed Bug 1287944 - Improve interaction with Oculus Home r=daoshengmu
- Now destroying and re-creating Oculus sessions when switching
  between magic window and immersive WebVR (BeginPresent / ExitPresent)
- Now sending flags to Oculus ovr_initilize to specify if Firefox will
  be presenting to the VR display or just using tracking
- Now coordinating oculus session shutdown and restart between the
  VR controllers and the VR display with reference counting.
- Now able to return to Oculus home after using WebVR
- Magic window / non-exclusive sessions no longer take over the VR headset
  causing it to display a message that Firefox.exe is not responding.


MozReview-Commit-ID: EnRsxt6ZSzg

--HG--
extra : rebase_source : d1ecf52e064ffe88c2cdebb011b8ffa9beb7b46e
2017-07-04 13:28:27 -07:00
Kearwood Gilbert 391d83ccbc Bug 1374393 - Build OpenVR on macOS and Linux r=daoshengmu
- OpenVR was previously only being built for Windows builds
  it will now be built additionally on macOS and Linux.

MozReview-Commit-ID: 68ZUNmdybd1

--HG--
extra : rebase_source : 329c85c866f7c1c95566f77ccddb92c348563e4d
2017-05-31 11:14:55 -07:00
Kearwood Gilbert eb3becc0b0 Bug 1362213 - Implement chrome-only API to manage VR sessions r=daoshengmu,kanru,smaug
- Added new chrome-only webidl methods to be used by browser UI and WebExtensions
- Implemented bitmasked group visibility for VR sessions to enable switching
  between chrome and regular content presentations.
- Implemented throttling mechanism to avoid runaway, unthrottled render loops
  for VR sessions that are hidden by group visibility bitmasks or due to
  lower level platform VR events, such as during the Oculus
  "Health and Safety Warning".
- Simplified the PVRManager IPC protocol while extending it to support
  VR session groups and later WebVR content performance profiling API's.
- Removed the last WebVR related sync IPC call.


MozReview-Commit-ID: BMEIPyYeEbq

--HG--
extra : rebase_source : 47d3682cad3d913504175b7d4c3e9d992236f097
2017-05-08 16:01:36 -07: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 8cedccb89e Bug 1341423 - Integrate OpenVR binding library r=daoshengmu
MozReview-Commit-ID: GaUnfbXgh9L

--HG--
rename : gfx/vr/openvr/openvr.h => gfx/vr/openvr/headers/openvr.h
extra : rebase_source : e7a0983371c1ed381ddf431e2d5a814c510d4967
2017-02-27 16:59:30 -08: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 a5e10d768b Bug 1349414 - Allow updating VR controllers at the non-presenting mode; r=kip
MozReview-Commit-ID: CA6YxLxySDi

--HG--
extra : rebase_source : 058b8aebdf8d13e22d2c25bdf037094ca1e52f4b
2017-03-22 09:58:06 +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 83f1b993be Bug 1229480: Implement Puppet VR Device; r=kip
MozReview-Commit-ID: hslhADrGs5

--HG--
extra : rebase_source : 8a0ead8f99f71fe36da428a4d4ead91d3ea02624
2017-03-02 00:04:12 +08:00
Daosheng Mu 32f7b8390b Bug 1305890 - Part 1: Oculus Touch button inputs support; r=kip
MozReview-Commit-ID: CJmSW00e8Ov

--HG--
extra : rebase_source : f27abcda43cd3c02eb7f31cece07ef7ad26899d9
2017-01-04 11:30:49 +08:00
Daosheng Mu 3e9c86df65 Bug 1305889 - Part 2: Using VRControllerInfo as the parameter for AddGamepad; r=kip
MozReview-Commit-ID: Coye62hZxRs

--HG--
extra : rebase_source : d4166395794a55c565f37b803099682c9e075d8b
2017-02-06 16:12:52 +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
Kearwood Gilbert ed4e25824a Bug 1325810 - Reduce unneeded IPC when WebVR is not active r=daoshengmu
MozReview-Commit-ID: DBCtiC2zzHf

--HG--
extra : rebase_source : 3c996750c4a36100bedce7af4a60f025e7c46b19
2017-01-06 16:28:45 -08:00
Daosheng Mu 8385c9beb5 Bug 1323088 - OpenVR controller manager should not be created while loading runtime fail; r=kip
MozReview-Commit-ID: 6gM9r1Y4MkG

--HG--
extra : rebase_source : dbda834a119023c90a791267edeeac322569cd1d
2016-12-13 13:56:58 +08:00
Daosheng Mu 01da49789d Bug 1313581 - Part 3: Support hand attribute for OpenVR controllers; r=gw280
MozReview-Commit-ID: Ek91HPwsqVP

--HG--
extra : rebase_source : c522b718d0328c89d6e22f93d180f69f3719fa7e
2016-11-14 17:35:54 +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
Kearwood Gilbert 9a9f2caf59 Bug 1318468 - Update VR controller inputs on every VR Vsync rather than every 2D vsync r=daoshengmu
MozReview-Commit-ID: ICuIw4e56VC

--HG--
extra : rebase_source : 7875403f10f20c2467bdb51de20ff72456f9cc2a
2016-11-30 14:24:29 -08:00
Daosheng Mu bdd87656ea Bug 1320343 - Avoid to set Preference in the GPU process; r=kip
MozReview-Commit-ID: I73foOQh7L0

--HG--
extra : rebase_source : 69498fba6ec435bfce9e8fb55ba56ee64cb2729c
2016-11-26 23:06:34 +08:00
Daosheng Mu 9d690f01a2 Bug 1320633 - Refresh for new controllers coming in gfxVROpenVR; r=kip
MozReview-Commit-ID: Lpvawepnk0u

--HG--
extra : rebase_source : 76fc6937f28c21d597216a5f4ef27095fd66fc5e
2016-11-28 16:57:58 +08:00
Daosheng Mu 4d84c1a5cc Bug 1299932 - Part 3: Handle OpenVR controller position and orientation; r=kip
MozReview-Commit-ID: FyneJ5JfeNE

--HG--
extra : rebase_source : afd91ee94416285441397e6f51d6031c40fa5513
2016-10-24 18:09:11 +08:00
Daosheng Mu 4a7f6008a3 Bug 1299929 - Part 3: Handle VRController button inputs; r=kip
MozReview-Commit-ID: DxI0dcc4uET

--HG--
extra : rebase_source : 5214f4457fadffb9e4a81c9bb986393125a30c33
2016-10-13 14:35:13 +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 129f2f75a0 Bug 1186578 - [webvr] Implement OpenVR/SteamVR support,r=gw280
MozReview-Commit-ID: LmpcMJubrYR

--HG--
extra : rebase_source : c5d767c635bed9fa74ca94b2ce75952f20106702
2016-07-22 12:41:00 -07:00
Kan-Ru Chen b6d880aca1 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES


--HG--
rename : mfbt/unused.h => mfbt/Unused.h
2016-08-24 14:47:04 +08: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 905f496ed5 Bug 1250244 - Part 8: Implement WebVR DOM Events,r=bz
MozReview-Commit-ID: 4Fk0WszVTBR
2016-07-04 15:46:49 -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
Kearwood (Kip) Gilbert 20e3431c17 Bug 1250244 - Part 4: Remove Cardboard VR Support,r=gw280
- The Cardboard VR support has hardcoded values and uses low-performance
  orientation APIs and rendering paths.
- There is little benefit to this Cardboard VR implementation over using
  polyfills.
- A future implementation would be based on Google VR support in Android N
  and/or Samsung Gear VR Oculus Mobile APIs.

MozReview-Commit-ID: 7e9Th8ZTmj8
2016-05-27 13:49:13 -07:00
Kearwood (Kip) Gilbert d7f19a6795 Bug 1250244 - Part 3: Remove Oculus 0.5 Runtime support,r=gw280
- Oculus 0.5 runtime was the last to support OSX, but is no longer supported
  on the latest (El Capitan) OSX version and does not support current
  shipping Oculus hardware.
- Oculus 1.x runtime will continue to be supported for Oculus on Windows.

MozReview-Commit-ID: 2c7qViLoyr0
2016-05-27 13:49:09 -07:00
Georgiy Frolov 60cd01af74 Bug 1198518: [webvr] add support for OSVR,r=kip
MozReview-Commit-ID: K9nHww0Fe8s
2016-04-26 17:18:21 -04:00
Kearwood (Kip) Gilbert 2bf919f1ce Bug 1248761 - Destroy VRHMDInfo objects on the compositor thread r=daoshengmu
- Fixes a crash caused when shutting down the Oculus SDK objects
  in a different thread than the one that was used to
  initialize them.

MozReview-Commit-ID: DbB2pXVoqxL

--HG--
extra : rebase_source : 1447c4d9fd7f29bc14b8f91c6f5cd10dc1ec1f8b
2016-03-03 16:58:40 -08:00
Kearwood (Kip) Gilbert 0c83ce5c05 Bug 1182048 - Part 2: Implement e10s support for WebVR,r=vlad 2015-09-17 14:23:13 -07:00