mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Move viewports to being per-session, not per-frame
This commit is contained in:
parent
eaad692c0b
commit
794624b42b
5 changed files with 44 additions and 23 deletions
|
@ -40,7 +40,7 @@ use crate::dom::xrspace::XRSpace;
|
|||
use crate::realms::InRealm;
|
||||
use crate::task_source::TaskSource;
|
||||
use dom_struct::dom_struct;
|
||||
use euclid::{Rect, RigidTransform3D, Transform3D, Vector3D};
|
||||
use euclid::{RigidTransform3D, Transform3D, Vector3D};
|
||||
use ipc_channel::ipc::IpcReceiver;
|
||||
use ipc_channel::router::ROUTER;
|
||||
use metrics::ToMs;
|
||||
|
@ -463,17 +463,10 @@ impl XRSession {
|
|||
/// Constructs a View suitable for inline sessions using the inlineVerticalFieldOfView and canvas size
|
||||
pub fn inline_view(&self) -> View<Viewer> {
|
||||
debug_assert!(!self.is_immersive());
|
||||
let size = self
|
||||
.active_render_state
|
||||
.get()
|
||||
.GetBaseLayer()
|
||||
.expect("Must never construct views when base layer is not set")
|
||||
.size();
|
||||
View {
|
||||
// Inline views have no offset
|
||||
transform: RigidTransform3D::identity(),
|
||||
projection: *self.inline_projection_matrix.borrow(),
|
||||
viewport: Rect::from_size(size.to_i32()),
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue