servo/components
bors-servo 518ef39cfd Auto merge of #14618 - MortimerGoro:webvr_api, r=larsbergstrom,emilio,jdm,nox,asajeffrey,cvan
WebVR API Implementation

<!-- 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

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14618)
<!-- Reviewable:end -->
2017-01-09 06:39:45 -08:00
..
atoms Fire 'input' event after 'keypress' in input and textarea elements 2016-12-27 15:57:34 +05:30
bluetooth Use tinyfiledialogs from crates.io 2017-01-05 16:59:44 -05:00
bluetooth_traits Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
canvas WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
canvas_traits WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
compositing Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
config WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
constellation WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
debugger Removed util. 2016-12-14 18:04:37 -06:00
devtools Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
devtools_traits Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
geometry Removed util. 2016-12-14 18:04:37 -06:00
gfx Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
gfx_traits Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
jstraceable_derive Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
layout Move some methods from display_list_builder.rs 2017-01-09 12:33:23 +01:00
layout_thread Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
layout_traits Make the layout content process shutdown sender optional. 2016-11-30 01:24:45 +01:00
msg Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
net Auto merge of #14895 - dowoncha:request-websocket, r=jdm 2017-01-08 08:57:52 -08:00
net_traits Auto merge of #14895 - dowoncha:request-websocket, r=jdm 2017-01-08 08:57:52 -08:00
plugins Update to rustc 1.16.0-nightly (4ecc85beb 2016-12-28) 2017-01-02 10:51:02 +01:00
profile WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
profile_traits WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
rand An in-memory RNG that shares its file descriptor. 2017-01-05 13:51:53 +00:00
range Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
remutex Removed util. 2016-12-14 18:04:37 -06:00
script WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
script_layout_interface Don't inherit all properties for pre-computed pseudos if there are no matching rules. 2017-01-09 17:55:40 +08:00
script_traits WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
servo WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
style Don't inherit all properties for pre-computed pseudos if there are no matching rules. 2017-01-09 17:55:40 +08:00
style_traits Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
url Upgrade to rustc 1.16.0-nightly (6f1ae663e 2017-01-06) 2017-01-06 17:43:31 +01:00
webdriver_server Update url, num_cpus, heapsize, webdriver. 2017-01-06 14:12:42 -08:00
webvr WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00
webvr_traits WebVR API Implementation, r=larsbergstrom 2017-01-09 12:44:39 +01:00