mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
Create a constellation_traits
crate (#36088)
This change creates a `constellation_traits` crate. Previously messages to the `Constellation` were in the `compositing_traits` crate, which came about organically. This change moves these to a new crate which also contains data types that are used in both compositing/libservo and script (ie types that cross the process boundary). The idea is similar to `embedding_traits`, but this is meant for types not exposed to the API. This change allows deduplicating `UntrustedNodeAddress`, which previously had two versions to avoid circular dependencies. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
parent
02375809b0
commit
7c574141c0
52 changed files with 399 additions and 270 deletions
|
@ -21,6 +21,7 @@ webxr = ["dep:webxr"]
|
|||
base = { workspace = true }
|
||||
bitflags = { workspace = true }
|
||||
compositing_traits = { workspace = true }
|
||||
constellation_traits = { workspace = true }
|
||||
crossbeam-channel = { workspace = true }
|
||||
dpi = { workspace = true }
|
||||
embedder_traits = { workspace = true }
|
||||
|
|
|
@ -18,8 +18,11 @@ use base::id::{PipelineId, WebViewId};
|
|||
use base::{Epoch, WebRenderEpochToU16};
|
||||
use bitflags::bitflags;
|
||||
use compositing_traits::{
|
||||
CompositionPipeline, CompositorMsg, CompositorReceiver, ConstellationMsg, PaintMetricEvent,
|
||||
SendableFrameTree,
|
||||
CompositionPipeline, CompositorMsg, CompositorReceiver, SendableFrameTree,
|
||||
};
|
||||
use constellation_traits::{
|
||||
AnimationTickType, CompositorHitTestResult, ConstellationMsg, PaintMetricEvent,
|
||||
UntrustedNodeAddress, WindowSizeData, WindowSizeType,
|
||||
};
|
||||
use crossbeam_channel::Sender;
|
||||
use dpi::PhysicalSize;
|
||||
|
@ -34,7 +37,7 @@ use log::{debug, info, trace, warn};
|
|||
use pixels::{CorsStatus, Image, ImageFrame, PixelFormat};
|
||||
use profile_traits::time::{self as profile_time, ProfilerCategory};
|
||||
use profile_traits::time_profile;
|
||||
use script_traits::{AnimationState, AnimationTickType, WindowSizeData, WindowSizeType};
|
||||
use script_traits::AnimationState;
|
||||
use servo_config::opts;
|
||||
use servo_geometry::DeviceIndependentPixel;
|
||||
use style_traits::{CSSPixel, PinchZoomFactor};
|
||||
|
@ -52,9 +55,7 @@ use webrender_api::{
|
|||
};
|
||||
use webrender_traits::display_list::{HitTestInfo, ScrollTree};
|
||||
use webrender_traits::rendering_context::RenderingContext;
|
||||
use webrender_traits::{
|
||||
CompositorHitTestResult, CrossProcessCompositorMessage, ImageUpdate, UntrustedNodeAddress,
|
||||
};
|
||||
use webrender_traits::{CrossProcessCompositorMessage, ImageUpdate};
|
||||
|
||||
use crate::InitialCompositorState;
|
||||
use crate::webview::{UnknownWebView, WebView, WebViewManager};
|
||||
|
|
|
@ -7,7 +7,8 @@
|
|||
use std::cell::Cell;
|
||||
use std::rc::Rc;
|
||||
|
||||
use compositing_traits::{CompositorProxy, CompositorReceiver, ConstellationMsg};
|
||||
use compositing_traits::{CompositorProxy, CompositorReceiver};
|
||||
use constellation_traits::ConstellationMsg;
|
||||
use crossbeam_channel::Sender;
|
||||
use embedder_traits::ShutdownState;
|
||||
use profile_traits::{mem, time};
|
||||
|
|
|
@ -8,7 +8,8 @@ use std::collections::hash_map::{Entry, Keys, Values, ValuesMut};
|
|||
use std::rc::Rc;
|
||||
|
||||
use base::id::{PipelineId, WebViewId};
|
||||
use compositing_traits::{ConstellationMsg, SendableFrameTree};
|
||||
use compositing_traits::SendableFrameTree;
|
||||
use constellation_traits::{CompositorHitTestResult, ConstellationMsg, ScrollState};
|
||||
use embedder_traits::{
|
||||
InputEvent, MouseButton, MouseButtonAction, MouseButtonEvent, MouseMoveEvent, ShutdownState,
|
||||
TouchEvent, TouchEventType, TouchId,
|
||||
|
@ -22,7 +23,6 @@ use webrender_api::units::{DeviceIntPoint, DevicePoint, DeviceRect, LayoutVector
|
|||
use webrender_api::{
|
||||
ExternalScrollId, HitTestFlags, RenderReasons, SampledScrollOffset, ScrollLocation,
|
||||
};
|
||||
use webrender_traits::{CompositorHitTestResult, ScrollState};
|
||||
|
||||
use crate::IOCompositor;
|
||||
use crate::compositor::{PipelineDetails, ServoRenderer};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue