aboutsummaryrefslogtreecommitdiffstats
path: root/components/webgpu
diff options
context:
space:
mode:
authorMartin Robinson <mrobinson@igalia.com>2025-04-06 19:34:18 +0200
committerGitHub <noreply@github.com>2025-04-06 17:34:18 +0000
commit0caa271176d4670eb06bedd05cdffb24df08fc4f (patch)
tree9a0c3431dcf7ac31cfbdc1f801c9f4ef3dda6ae7 /components/webgpu
parente74a042efdf01ab2ff32e82e203bd1d954b599bd (diff)
downloadservo-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/webgpu')
-rw-r--r--components/webgpu/Cargo.toml2
-rw-r--r--components/webgpu/lib.rs2
-rw-r--r--components/webgpu/swapchain.rs2
-rw-r--r--components/webgpu/wgpu_thread.rs2
4 files changed, 4 insertions, 4 deletions
diff --git a/components/webgpu/Cargo.toml b/components/webgpu/Cargo.toml
index 029be8a5e76..f25f160b1b0 100644
--- a/components/webgpu/Cargo.toml
+++ b/components/webgpu/Cargo.toml
@@ -14,6 +14,7 @@ path = "lib.rs"
[dependencies]
arrayvec = { workspace = true, features = ["serde"] }
base = { workspace = true }
+compositing_traits = { workspace = true }
euclid = { workspace = true }
ipc-channel = { workspace = true }
log = { workspace = true }
@@ -23,7 +24,6 @@ servo_config = { path = "../config" }
webgpu_traits = { workspace = true }
webrender = { workspace = true }
webrender_api = { workspace = true }
-webrender_traits = { workspace = true }
wgpu-core = { workspace = true, features = ["serde", "wgsl"] }
wgpu-types = { workspace = true }
diff --git a/components/webgpu/lib.rs b/components/webgpu/lib.rs
index 1842258a9fb..ce09f77af49 100644
--- a/components/webgpu/lib.rs
+++ b/components/webgpu/lib.rs
@@ -16,10 +16,10 @@ mod wgpu_thread;
use std::borrow::Cow;
use std::sync::{Arc, Mutex};
+use compositing_traits::WebrenderExternalImageRegistry;
use ipc_channel::ipc::{self, IpcReceiver};
use servo_config::pref;
use webrender_api::DocumentId;
-use webrender_traits::WebrenderExternalImageRegistry;
pub mod swapchain;
diff --git a/components/webgpu/swapchain.rs b/components/webgpu/swapchain.rs
index 0245084e480..6d61540581b 100644
--- a/components/webgpu/swapchain.rs
+++ b/components/webgpu/swapchain.rs
@@ -8,6 +8,7 @@ use std::slice;
use std::sync::{Arc, Mutex};
use arrayvec::ArrayVec;
+use compositing_traits::{WebrenderExternalImageApi, WebrenderImageSource};
use euclid::default::Size2D;
use ipc_channel::ipc::{IpcSender, IpcSharedMemory};
use log::{error, warn};
@@ -21,7 +22,6 @@ use webrender_api::{
DirtyRect, DocumentId, ExternalImageData, ExternalImageId, ExternalImageType, ImageData,
ImageDescriptor, ImageDescriptorFlags, ImageFormat, ImageKey,
};
-use webrender_traits::{WebrenderExternalImageApi, WebrenderImageSource};
use wgpu_core::device::HostMap;
use wgpu_core::global::Global;
use wgpu_core::id;
diff --git a/components/webgpu/wgpu_thread.rs b/components/webgpu/wgpu_thread.rs
index 93cf5a56bae..ce0303aaba7 100644
--- a/components/webgpu/wgpu_thread.rs
+++ b/components/webgpu/wgpu_thread.rs
@@ -10,6 +10,7 @@ use std::slice;
use std::sync::{Arc, Mutex};
use base::id::PipelineId;
+use compositing_traits::{WebrenderExternalImageRegistry, WebrenderImageHandlerType};
use ipc_channel::ipc::{IpcReceiver, IpcSender, IpcSharedMemory};
use log::{info, warn};
use servo_config::pref;
@@ -20,7 +21,6 @@ use webgpu_traits::{
};
use webrender::{RenderApi, RenderApiSender};
use webrender_api::{DocumentId, ExternalImageId};
-use webrender_traits::{WebrenderExternalImageRegistry, WebrenderImageHandlerType};
use wgc::command::{ComputePass, ComputePassDescriptor, RenderPass};
use wgc::device::{DeviceDescriptor, ImplicitPipelineIds};
use wgc::id;