mirror of
https://github.com/servo/servo.git
synced 2025-08-03 12:40:06 +01:00
Auto merge of #27418 - Manishearth:secondary-view-pref, r=asajeffrey
Move secondary view support into a pref Needs https://github.com/servo/webxr/pull/188 Adds a `dom.webxr.first_person_observer_view` pref that toggles FPO views.
This commit is contained in:
commit
870812d895
5 changed files with 7 additions and 3 deletions
4
Cargo.lock
generated
4
Cargo.lock
generated
|
@ -6820,7 +6820,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "webxr"
|
name = "webxr"
|
||||||
version = "0.0.1"
|
version = "0.0.1"
|
||||||
source = "git+https://github.com/servo/webxr#2ff286efcf8bc85fbe2fc91df1aefb1aff911781"
|
source = "git+https://github.com/servo/webxr#ae74e50cc89cb4965ec4897b3b9ff4cfedf7a6ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"android_injected_glue",
|
"android_injected_glue",
|
||||||
"bindgen",
|
"bindgen",
|
||||||
|
@ -6843,7 +6843,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#2ff286efcf8bc85fbe2fc91df1aefb1aff911781"
|
source = "git+https://github.com/servo/webxr#ae74e50cc89cb4965ec4897b3b9ff4cfedf7a6ca"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"euclid",
|
"euclid",
|
||||||
"ipc-channel",
|
"ipc-channel",
|
||||||
|
|
|
@ -282,6 +282,7 @@ mod gen {
|
||||||
enabled: bool,
|
enabled: bool,
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
test: bool,
|
test: bool,
|
||||||
|
first_person_observer_view: bool,
|
||||||
glwindow: {
|
glwindow: {
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
enabled: bool,
|
enabled: bool,
|
||||||
|
|
|
@ -26,6 +26,7 @@ use ipc_channel::ipc::{self as ipc_crate, IpcReceiver};
|
||||||
use ipc_channel::router::ROUTER;
|
use ipc_channel::router::ROUTER;
|
||||||
use msg::constellation_msg::PipelineId;
|
use msg::constellation_msg::PipelineId;
|
||||||
use profile_traits::ipc;
|
use profile_traits::ipc;
|
||||||
|
use servo_config::pref;
|
||||||
use std::cell::Cell;
|
use std::cell::Cell;
|
||||||
use std::rc::Rc;
|
use std::rc::Rc;
|
||||||
use webxr_api::{Error as XRError, Frame, Session, SessionInit, SessionMode};
|
use webxr_api::{Error as XRError, Frame, Session, SessionInit, SessionMode};
|
||||||
|
@ -215,6 +216,7 @@ impl XRSystemMethods for XRSystem {
|
||||||
let init = SessionInit {
|
let init = SessionInit {
|
||||||
required_features,
|
required_features,
|
||||||
optional_features,
|
optional_features,
|
||||||
|
first_person_observer_view: pref!(dom.webxr.first_person_observer_view),
|
||||||
};
|
};
|
||||||
|
|
||||||
let mut trusted = Some(TrustedPromise::new(promise.clone()));
|
let mut trusted = Some(TrustedPromise::new(promise.clone()));
|
||||||
|
|
|
@ -843,7 +843,7 @@ impl EmbedderMethods for ServoEmbedderCallbacks {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if openxr::create_instance(false).is_ok() {
|
if openxr::create_instance(false, false).is_ok() {
|
||||||
let discovery =
|
let discovery =
|
||||||
openxr::OpenXrDiscovery::new(Box::new(ContextMenuCallback(embedder_proxy)));
|
openxr::OpenXrDiscovery::new(Box::new(ContextMenuCallback(embedder_proxy)));
|
||||||
registry.register(discovery);
|
registry.register(discovery);
|
||||||
|
|
|
@ -40,6 +40,7 @@
|
||||||
"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.first_person_observer_view": false,
|
||||||
"dom.webxr.glwindow.cubemap": false,
|
"dom.webxr.glwindow.cubemap": false,
|
||||||
"dom.webxr.glwindow.enabled": true,
|
"dom.webxr.glwindow.enabled": true,
|
||||||
"dom.webxr.glwindow.left-right": false,
|
"dom.webxr.glwindow.left-right": false,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue