Commit Graph

95 Commits

Author SHA1 Message Date
Daosheng Mu
8a895d7e7f Bug 1352520 - Add GeckoProfiler markers for WebVR; r=kip
MozReview-Commit-ID: 6j22J0rSw1Y

--HG--
extra : rebase_source : 44f3d0052ab0b608f3b5cea5b977f7a2bba428b6
2017-09-06 16:08:21 +08:00
Milan Sreckovic
e3cd0a3157 Bug 1387514: Upgrade BaseRect (derived classes) width and height direct member variable use to instead use Width()/SetWidth() and Height()/SetHeight() in .cpp files in gfx/*. r=milan
MozReview-Commit-ID: 1jESowJKdyp

--HG--
extra : rebase_source : 3839cdea46729a9af05c777215cffcb9f42a2018
2017-08-14 08:29:28 -04:00
JerryShih
061742e951 Bug 1357299 - P11: Update layers, dxva and vr module to use SyncObjectChild. v3. r=mattwoodrow,dvander
MozReview-Commit-ID: 4HTPz0YcYHq
2017-08-07 18:15:24 +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
Kearwood "Kip" Gilbert
2a221a0a19 Bug 1321275 - Fix reference counting of PVRLayerChild when GPU process has been terminated r=daoshengmu
- In VRManagerChild::DeallocPVRLayerChild, we delete the PVRLayerChild, rather
  than doing proper reference counting on the VRLayerChild object which has
  been deallocated but still referenced by VRDisplayPresentation::mLayers.
  This happens when the GPU process is terminated.

- When the user tries to stop the VR presentation or change the URL,
  PVRLayerChild::SendDestroy is called by VRDisplayPresentation::DestroyLayers.
  This results in the assertion about "invalid actor state".

- This patch fixes this by following the same pattern used by TextureClient
  for its PTextureChild.

MozReview-Commit-ID: 327cdb4s7kl

--HG--
extra : rebase_source : 88847acd39d82f258f0c969e6ef5e22b794f6428
2017-07-12 16:05:40 -07: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
Bill McCloskey
f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Daosheng Mu
355cf89806 Bug 1371228 - Handling SteamVR process quit events to avoid crashes; r=kip
MozReview-Commit-ID: DBkzz06pRSu

--HG--
extra : rebase_source : 95831f0c3454bf758fa537900dbddbf4024e13dd
2017-06-22 14:32:18 +08: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
Daosheng Mu
f8427acdf3 Bug 1364856 - When VRLayerChild receives __delete__, stop sending IPC messages; r=kip
MozReview-Commit-ID: 2vKdzipaga0

--HG--
extra : rebase_source : 56d586b5a82a68aa99ff53dba309cc4a9ea476ed
2017-05-15 18:55:42 +08:00
Kevin Chen
aa4fe616d0 Bug 1343754 - Add a function for replacing event target for actor and label PTexture; r=bevistseng,billm,nical
MozReview-Commit-ID: KGVBWsexkqC

--HG--
extra : rebase_source : 2ae5e2aa2e54cb2c368310ebdb1fdcbcae3092f4
2017-03-21 03:57:56 +00:00
Daosheng Mu
6a807270be Bug 1321275 - Confirm VRLayerChild is not destroyed before sending destroy message to the parent side; r=kip
MozReview-Commit-ID: v0awwplOQv

--HG--
extra : rebase_source : 3a15b5249ea03e0d64a6229d55d6d418d9b8076f
2017-05-03 18:43:39 +08:00
Sebastian Hengst
0d8a182804 Backed out changeset 25f2e9e2068d (bug 1343754) for crashing e.g. in dom/workers/test/serviceworkers/test_fetch_integrity.html. r=backout 2017-05-03 12:59:36 +02:00
Kevin Chen
bdb02a828a Bug 1343754 - Add a function for replacing event target for actor and label PTexture; r=bevistseng,billm,nical
MozReview-Commit-ID: KGVBWsexkqC

--HG--
extra : rebase_source : 5ac2edced51462fd013f0efba0e434d6a2fc7863
2017-03-21 03:57:56 +00:00
sotaro
e39bdc681a Bug 1356944 - Fix external image id allocation of WebRenderTextureHost r=nical 2017-04-20 10:24:13 +09:00
Ben Tian
cda6ed446d Bug 1350459 - Remove the [Throws] annotation from Window.navigator, r=qdot
MozReview-Commit-ID: 8vjyVrfa3xT

--HG--
extra : rebase_source : d63942141b562e0e69611f3cbc1da4e9ee522efc
2017-04-14 10:40:03 +08:00
Kevin Chen
c68305b9bb Bug 1343758 - Label the tasks in vr module. r=bevistseng,kip
--HG--
extra : rebase_source : a50035db7bd85c36ae5af6f528f5d26762db7701
2017-03-23 06:19:11 +00: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
Kearwood Gilbert
b38d859652 Bug 1346926 - Make PVRManager::SetHaveEventListener async r=kanru
- There appears to be no issues with simply changing
  SetHaveEventListener from sync to async.

MozReview-Commit-ID: 3LKgDx9AZnm

--HG--
extra : rebase_source : 6c706f592f71a8c967a58f6906861fcff2525ebf
2017-03-21 13:21:17 -07:00
Kearwood Gilbert
4e410934af Bug 1346923 - Remove PVRManager::GetDisplays sync IPC r=daoshengmu,kanru
- PVRManager::GetDisplays was a sync IPC that was part of an optimization
  for a use case that has been eliminated by changes to the WebVR spec.
- This was an optimization for Navigator.activeVRDisplays that would allow
  enumeration of displays active in any content process without powering
  on any additional VR hardware.  This will no longer be necessary as the
  activeVRDisplays has been restricted to returning only the displays
  active in the current javascript context.

MozReview-Commit-ID: F6sOtM9nups

--HG--
extra : rebase_source : bd8967fab9677206d998eea922c8d1640551de1c
2017-03-15 16:40:57 -07:00
Daosheng Mu
66f6566530 Bug 1306493 - Part 5: Make we only have one VRMockDisplay in tests; r=kip
MozReview-Commit-ID: ACIszhHGUiQ

--HG--
extra : rebase_source : 66addde807ff29315c903506439eed39b900b52e
2017-03-15 13:50:34 +08:00
Daosheng Mu
f09c777451 Bug 1306493 - Part 1: Fix bug of getting frame data from VRPuppet; r=kip
MozReview-Commit-ID: L8gPVjxELtV

--HG--
extra : rebase_source : 1790c8970e5401c1e0c4431c947f9bdad2fa2c34
2017-03-13 13:07:48 +08:00
Daosheng Mu
14584d2aa7 Bug 1346680 - Duplicate refcount on VRLayerParent/Child when the construction; r=kip
MozReview-Commit-ID: BpEmUkgmPA3

--HG--
extra : rebase_source : 2f235d5dbbb8204de3c9baaee27b3fccccc7896d
2017-03-14 12:40:19 +08:00
Kearwood Gilbert
5441d7848d Bug 1345564 - Reduce sync IPC calls used by WebVR r=daoshengmu,Ehsan,kanru
- Eliminated the VRDisplay.GetImmediateSensorState sync call
  and associated code as it is no longer needed.

MozReview-Commit-ID: 7BsCKC9EbsY

--HG--
extra : rebase_source : ae2de369d156e397d919d83b6c63b10374953bae
2017-03-03 16:21:18 -08:00
Ehsan Akhgari
dcb0bf572d Bug 1345497 - Remove the unused PVRManager::GetControllers sync IPC; r=kip,billm 2017-03-09 23:26:47 -05: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
cfca85c8aa Bug 1323328 - Part 2: Implement VRServiceTest backend at VRManager; r=kip
MozReview-Commit-ID: EpW7BqeICLo

--HG--
extra : rebase_source : 6274d1ed704b6dae7b06a71e357b189c97cfbde3
2017-03-01 23:58:31 +08:00
Kearwood Gilbert
9d394c09bb Bug 1335606 - Add 'display' value to Navigator.vrdisplayconnect, Navigator.vrdisplaydisconnect, and Navigator.vrdisplaypresentchange events r=smaug
MozReview-Commit-ID: FLZ7u98mqqi

--HG--
extra : rebase_source : dd783f3c085efc50c4114ea45ac3f695670079fd
2017-02-14 11:21:09 -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
JerryShih
a02136ffc6 Bug 1336362 - Remove PCompositable, PLayer and PImageContainer related def. r=dvander
MozReview-Commit-ID: IzxHU1SRh2t
2017-02-03 01:06:00 -05:00
Kearwood (Kip) Gilbert
8dc97eb398 Bug 1293333 - Part 1: Implement window.onvrdisplayactivate and window.onvrdisplaydeactivate events r=daoshengmu,Ehsan
MozReview-Commit-ID: 746L5KObBcg

--HG--
extra : rebase_source : 3efa9171be4ec2aa6dc12bd4651e197571cf33c6
2016-10-18 18:18:10 -04:00
David Anderson
504484a456 Remove PLayer. (bug 1323539 part 2, r=mattwoodrow) 2016-12-21 10:43:47 -05:00
Daosheng Mu
370aa4a0c8 Bug 1315896 - Part 3: Remove MOZ_GAMEPAD in VR module; r=kip
MozReview-Commit-ID: I9vJvxgFgIh

--HG--
extra : rebase_source : 270e971ace44b00d9877a67f68f349bbd9b550c1
2016-12-08 13:01:11 -10:00
Andrew McCreight
fccb0645ed Bug 1323042 - forbid MOZ_COUNT_{CTOR,DTOR} for nsISupports classes; r=froydnj 2016-12-12 09:27:58 -05:00
Nathan Froyd
826598caba Backout aba6c73511a2 (bug 1307961) for massive test bustage resulting in a CLOSED TREE; r=alltheorange 2016-12-12 08:45:46 -05:00
Andrew McCreight
e31b5489da Bug 1307961 - require consistent bloatview reporting for nsISupports classes; r=froydnj 2016-12-12 07:58:33 -05: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
a766482389 Bug 1315718 - Replace mGamepadManager raw pointer with RefPtr in VRManagerChild. r=smaug, kip, dmu
MozReview-Commit-ID: HOqQm2F6Dpn
---
 dom/gamepad/GamepadManager.cpp |  1 -
 gfx/vr/ipc/VRManagerChild.cpp  | 18 ++++++------------
 gfx/vr/ipc/VRManagerChild.h    |  4 ----
 gfx/vr/ipc/VRManagerParent.cpp | 21 +++++++++++++++++----
 gfx/vr/ipc/VRManagerParent.h   |  4 +++-
 5 files changed, 26 insertions(+), 22 deletions(-)

--HG--
extra : amend_source : 4a687f8cbe12d88da3c88e0dba859331806fc6ff
2016-12-01 13:12:10 +08:00
Kearwood (Kip) Gilbert
53f4153710 Bug 1315543 - Eliminate UAF in Navigator::NotifyVRDisplaysUpdated,r=dmu 2016-11-24 11:50:43 -08:00
Kan-Ru Chen
f8100451db Bug 1314254 - Add mozilla::ipc::IPCResult type and convert IPDL handlers to use new return type. r=billm
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.

MozReview-Commit-ID: AzVbApxFGZ0
2016-11-15 04:26:00 +01:00