mirror of
https://github.com/servo/servo.git
synced 2025-07-22 23:03:42 +01:00
feat: webxr
feature flag (#34241)
* Add webxr feature flag Add webxr feature flag to embedder_traits Add webxr flag to constellation Add webxr flag to compositor Add webxr flag to canvas Turn registry into optional Add webxr flag to servo lib Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> Co-authored-by: august kline <me@augustkline.com> * Cargo fmt Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> * Add missing license Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> * Cargo clippy Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> --------- Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> Co-authored-by: august kline <me@augustkline.com>
This commit is contained in:
parent
91f96cc9dd
commit
47a243614f
21 changed files with 456 additions and 374 deletions
|
@ -15,7 +15,6 @@ use num_derive::FromPrimitive;
|
|||
use serde::{Deserialize, Serialize};
|
||||
use servo_url::ServoUrl;
|
||||
use webrender_api::units::{DeviceIntPoint, DeviceIntRect, DeviceIntSize};
|
||||
pub use webxr_api::MainThreadWaker as EventLoopWaker;
|
||||
|
||||
/// A cursor for the window. This is different from a CSS cursor (see
|
||||
/// `CursorKind`) in that it has no `Auto` value.
|
||||
|
@ -59,6 +58,21 @@ pub enum Cursor {
|
|||
ZoomOut,
|
||||
}
|
||||
|
||||
#[cfg(feature = "webxr")]
|
||||
pub use webxr_api::MainThreadWaker as EventLoopWaker;
|
||||
#[cfg(not(feature = "webxr"))]
|
||||
pub trait EventLoopWaker: 'static + Send {
|
||||
fn clone_box(&self) -> Box<dyn EventLoopWaker>;
|
||||
fn wake(&self);
|
||||
}
|
||||
|
||||
#[cfg(not(feature = "webxr"))]
|
||||
impl Clone for Box<dyn EventLoopWaker> {
|
||||
fn clone(&self) -> Self {
|
||||
EventLoopWaker::clone_box(self.as_ref())
|
||||
}
|
||||
}
|
||||
|
||||
/// Sends messages to the embedder.
|
||||
pub struct EmbedderProxy {
|
||||
pub sender: Sender<(Option<TopLevelBrowsingContextId>, EmbedderMsg)>,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue