gecko-dev/servo/components
Imanol Fernandez 952fe5d9e8 servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan
<!-- Please describe your changes on the following line: -->

WebVR API Implementation with HTC Vive support on Windows. The current implementations only enables the WebVR support on Windows. In other platforms the API is available on JavaScript but navigator.vr.getDisplays() returns an empty array. This will change when we add support for more VR providers and platforms ;)

Info about the architecture:
https://blog.mozvr.com/webvr-servo-architecture-and-latency-optimizations/
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____

Proprietary openvr.dll must be copied next to servo.exe in order to test on HTC Vive (https://github.com/ValveSoftware/openvr/tree/master/bin/win64) I have added some of the official WebVR samples for testing. Switch on your headset and run:

mach run tests/html/webvr/room-scale.html

Source-Repo: https://github.com/servo/servo
Source-Revision: 518ef39cfd429082dd8dc0d5b13e2db637d08a53
2017-01-09 06:39:45 -08:00
..
atoms servo: Merge #14738 - Properly dispatch keypress event (from Wafflespeanut:keypress); r=jdm 2017-01-04 10:52:06 -08:00
bluetooth servo: Merge #14871 - Use tinyfiledialogs from crates.io (from shssoichiro:14862-tinyfiledialogs-from-crates-io); r=jdm 2017-01-05 22:49:19 -08:00
bluetooth_traits servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
canvas servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
canvas_traits servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
compositing servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
config servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
constellation servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
debugger servo: Merge #14592 - Remove the util crate (from asajeffrey:util-goodbye); r=mbrubeck 2016-12-14 16:48:42 -08:00
devtools servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
devtools_traits servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
geometry servo: Merge #14592 - Remove the util crate (from asajeffrey:util-goodbye); r=mbrubeck 2016-12-14 16:48:42 -08:00
gfx servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
gfx_traits servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
jstraceable_derive servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
layout servo: Merge #14926 - Move some methods from display_list_builder.rs (from mrobinson:move-display-list-builder-methods); r=emilio 2017-01-09 04:31:30 -08:00
layout_thread servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
layout_traits servo: Merge #13996 - Implement synchronous about:blank loading (from servo:about-blank); r=Ms2ger,jdm,asajeffrey,nox 2016-12-01 00:35:12 -08:00
msg servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
net servo: Merge #14895 - Added Websocket to RequestMode enum (from dowoncha:request-websocket); r=jdm 2017-01-08 08:57:52 -08:00
net_traits servo: Merge #14895 - Added Websocket to RequestMode enum (from dowoncha:request-websocket); r=jdm 2017-01-08 08:57:52 -08:00
plugins servo: Merge #14689 - Update to rustc 1.16.0-nightly (4ecc85beb 2016-12-28) (from servo:rustup); r=Manishearth 2017-01-02 03:03:40 -08:00
profile servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
profile_traits servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
rand servo: Merge #14351 - An in-memory RNG that shares its file descriptor (from asajeffrey:servo-rand-share-fds); r=emilio 2017-01-05 06:32:23 -08:00
range servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
remutex servo: Merge #14592 - Remove the util crate (from asajeffrey:util-goodbye); r=mbrubeck 2016-12-14 16:48:42 -08:00
script servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
script_layout_interface servo: Merge #14922 - Don't inherit all properties for eagerly computed pseudos if there are no matching rules (from heycam:pseudo-inherit); r=emilio 2017-01-09 02:46:09 -08:00
script_traits servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
servo servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
style servo: Merge #14922 - Don't inherit all properties for eagerly computed pseudos if there are no matching rules (from heycam:pseudo-inherit); r=emilio 2017-01-09 02:46:09 -08:00
style_traits servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
url servo: Merge #14889 - Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) (from servo:rustup); r=jdm 2017-01-07 08:18:28 -08:00
webdriver_server servo: Merge #14874 - Update url, num_cpus, heapsize, webdriver (from mbrubeck:always-be-updating); r=Manishearth 2017-01-06 23:34:20 -08:00
webvr servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00
webvr_traits servo: Merge #14618 - WebVR API Implementation (from MortimerGoro:webvr_api); r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan 2017-01-09 06:39:45 -08:00