- 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
- Oculus and OSVR VRFrameData.timestamp values were already returning correct
timestamps using their respective API's timestamp functions.
- OpenVR is now using timestamp values returned by the OpenVR API.
- A pseudo-random base for VRFrameData.timestamp has been implemented
in order to avoid leaking details related to how long the user has
been using their VR headset before hitting a page.
- More details on timestamp base within code comments...
MozReview-Commit-ID: 7VdiRn7l8Rb
--HG--
extra : rebase_source : cde5bc9de07cd120294ccd4ef502af030da9d03c
- 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