mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
Add a pref for webxr glwindow anaglyphic red-cyan stereo
This commit is contained in:
parent
28d2cbf6bc
commit
d4f0dbce25
5 changed files with 19 additions and 6 deletions
4
Cargo.lock
generated
4
Cargo.lock
generated
|
@ -6428,7 +6428,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "webxr"
|
name = "webxr"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
source = "git+https://github.com/servo/webxr#eae68436697131122504b035746daa3a157b36b4"
|
source = "git+https://github.com/servo/webxr#e1e935abacbef378efd3c5a676dfe63d4e5a6692"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"android_injected_glue",
|
"android_injected_glue",
|
||||||
"bindgen",
|
"bindgen",
|
||||||
|
@ -6451,7 +6451,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "webxr-api"
|
name = "webxr-api"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
source = "git+https://github.com/servo/webxr#eae68436697131122504b035746daa3a157b36b4"
|
source = "git+https://github.com/servo/webxr#e1e935abacbef378efd3c5a676dfe63d4e5a6692"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"euclid",
|
"euclid",
|
||||||
"ipc-channel",
|
"ipc-channel",
|
||||||
|
|
|
@ -297,8 +297,12 @@ mod gen {
|
||||||
enabled: bool,
|
enabled: bool,
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
test: bool,
|
test: bool,
|
||||||
#[serde(default)]
|
glwindow: {
|
||||||
glwindow: bool,
|
#[serde(default)]
|
||||||
|
enabled: bool,
|
||||||
|
#[serde(rename = "dom.webxr.glwindow.red-cyan")]
|
||||||
|
red_cyan: bool,
|
||||||
|
},
|
||||||
hands: {
|
hands: {
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
enabled: bool,
|
enabled: bool,
|
||||||
|
|
|
@ -54,7 +54,7 @@ impl App {
|
||||||
))
|
))
|
||||||
};
|
};
|
||||||
|
|
||||||
let xr_discovery = if pref!(dom.webxr.glwindow) {
|
let xr_discovery = if pref!(dom.webxr.glwindow.enabled) {
|
||||||
let window = window.clone();
|
let window = window.clone();
|
||||||
let surfman = window.webrender_surfman();
|
let surfman = window.webrender_surfman();
|
||||||
let events_loop = events_loop.clone();
|
let events_loop = events_loop.clone();
|
||||||
|
|
|
@ -651,6 +651,14 @@ impl webxr::glwindow::GlWindow for XRWindow {
|
||||||
fn get_translation(&self) -> Vector3D<f32, UnknownUnit> {
|
fn get_translation(&self) -> Vector3D<f32, UnknownUnit> {
|
||||||
self.pose.xr_translation.get().clone()
|
self.pose.xr_translation.get().clone()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn get_mode(&self) -> webxr::glwindow::GlWindowMode {
|
||||||
|
if pref!(dom.webxr.glwindow.red_cyan) {
|
||||||
|
webxr::glwindow::GlWindowMode::StereoRedCyan
|
||||||
|
} else {
|
||||||
|
webxr::glwindow::GlWindowMode::StereoLeftRight
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl XRWindowPose {
|
impl XRWindowPose {
|
||||||
|
|
|
@ -33,7 +33,8 @@
|
||||||
"dom.webvr.test": false,
|
"dom.webvr.test": false,
|
||||||
"dom.webvtt.enabled": false,
|
"dom.webvtt.enabled": false,
|
||||||
"dom.webxr.enabled": true,
|
"dom.webxr.enabled": true,
|
||||||
"dom.webxr.glwindow": true,
|
"dom.webxr.glwindow.enabled": true,
|
||||||
|
"dom.webxr.glwindow.red-cyan": false,
|
||||||
"dom.webxr.hands.enabled": false,
|
"dom.webxr.hands.enabled": false,
|
||||||
"dom.webxr.layers.enabled": false,
|
"dom.webxr.layers.enabled": false,
|
||||||
"dom.webxr.test": false,
|
"dom.webxr.test": false,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue