diff options
author | Martin Robinson <mrobinson@igalia.com> | 2025-04-06 19:34:18 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-06 17:34:18 +0000 |
commit | 0caa271176d4670eb06bedd05cdffb24df08fc4f (patch) | |
tree | 9a0c3431dcf7ac31cfbdc1f801c9f4ef3dda6ae7 /components/constellation | |
parent | e74a042efdf01ab2ff32e82e203bd1d954b599bd (diff) | |
download | servo-0caa271176d4670eb06bedd05cdffb24df08fc4f.tar.gz servo-0caa271176d4670eb06bedd05cdffb24df08fc4f.zip |
`compositing`: Combine `webrender_traits` and `compositing_traits` (#36372)
These two traits both exposed different parts of the compositing API,
but now that the compositor doesn't depend directly on `script` any
longer and the `script_traits` crate has been split into the
`constellation_traits` crate, this can be finally be cleaned up without
causing circular dependencies. In addition, some unit tests for the
`IOPCompositor`'s scroll node tree are also moved into
`compositing_traits` as well.
Testing: This just combines two crates, so no new tests are necessary.
Fixes: #35984.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Diffstat (limited to 'components/constellation')
-rw-r--r-- | components/constellation/Cargo.toml | 1 | ||||
-rw-r--r-- | components/constellation/constellation.rs | 5 | ||||
-rw-r--r-- | components/constellation/pipeline.rs | 5 |
3 files changed, 6 insertions, 5 deletions
diff --git a/components/constellation/Cargo.toml b/components/constellation/Cargo.toml index 9bc1576fa62..19b452e2021 100644 --- a/components/constellation/Cargo.toml +++ b/components/constellation/Cargo.toml @@ -53,7 +53,6 @@ webgpu = { path = "../webgpu" } webgpu_traits = { workspace = true } webrender = { workspace = true } webrender_api = { workspace = true } -webrender_traits = { workspace = true } webxr-api = { workspace = true, features = ["ipc"] } [target.'cfg(any(target_os="macos", all(not(target_os = "windows"), not(target_os = "ios"), not(target_os="android"), not(target_env="ohos"), not(target_arch="arm"), not(target_arch="aarch64"))))'.dependencies] diff --git a/components/constellation/constellation.rs b/components/constellation/constellation.rs index a2809defdd6..e1a16e4174f 100644 --- a/components/constellation/constellation.rs +++ b/components/constellation/constellation.rs @@ -108,7 +108,9 @@ use bluetooth_traits::BluetoothRequest; use canvas_traits::ConstellationCanvasMsg; use canvas_traits::canvas::{CanvasId, CanvasMsg}; use canvas_traits::webgl::WebGLThreads; -use compositing_traits::{CompositorMsg, CompositorProxy, SendableFrameTree}; +use compositing_traits::{ + CompositorMsg, CompositorProxy, SendableFrameTree, WebrenderExternalImageRegistry, +}; use constellation_traits::{ AnimationTickType, AuxiliaryWebViewCreationRequest, AuxiliaryWebViewCreationResponse, BroadcastMsg, DocumentState, EmbedderToConstellationMessage, IFrameLoadInfo, @@ -164,7 +166,6 @@ use webgpu_traits::{WebGPU, WebGPURequest}; use webrender::RenderApi; use webrender::RenderApiSender; use webrender_api::{DocumentId, ImageKey}; -use webrender_traits::WebrenderExternalImageRegistry; use crate::browsingcontext::{ AllBrowsingContextsIterator, BrowsingContext, FullyActiveBrowsingContextsIterator, diff --git a/components/constellation/pipeline.rs b/components/constellation/pipeline.rs index 8095cd6f0ae..b6e546acd48 100644 --- a/components/constellation/pipeline.rs +++ b/components/constellation/pipeline.rs @@ -18,7 +18,9 @@ use base::id::{ #[cfg(feature = "bluetooth")] use bluetooth_traits::BluetoothRequest; use canvas_traits::webgl::WebGLPipeline; -use compositing_traits::{CompositionPipeline, CompositorMsg, CompositorProxy}; +use compositing_traits::{ + CompositionPipeline, CompositorMsg, CompositorProxy, CrossProcessCompositorApi, +}; use constellation_traits::{LoadData, SWManagerMsg, ScriptToConstellationChan}; use crossbeam_channel::{Sender, unbounded}; use devtools_traits::{DevtoolsControlMsg, ScriptToDevtoolsControlMsg}; @@ -46,7 +48,6 @@ use servo_config::opts::{self, Opts}; use servo_config::prefs::{self, Preferences}; use servo_url::ServoUrl; use webrender_api::DocumentId; -use webrender_traits::CrossProcessCompositorApi; use crate::event_loop::EventLoop; use crate::process_manager::Process; |