mirror of
https://github.com/servo/servo.git
synced 2025-07-23 23:33:43 +01:00
webgpu: Add a webgpu_traits
crate (#36320)
This breaks the `script_traits` dependency on `webgpu`. In general, the `traits` crates shouldn't depend on Servo non-`traits` crates. This is necessary to move "script to constellation" messages to the `constellation_traits` crate, making it the entire API for talking to the constellation. This will break a circular dependency when that happens. Testing: Successfully building is enough of a test for this one as it is mainly moving types around. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
parent
df9efde1c3
commit
0d693114ad
52 changed files with 640 additions and 568 deletions
|
@ -13,7 +13,7 @@ path = "lib.rs"
|
|||
|
||||
[features]
|
||||
bluetooth = ["bluetooth_traits"]
|
||||
webgpu = []
|
||||
webgpu = ["wgpu-core"]
|
||||
|
||||
[dependencies]
|
||||
background_hang_monitor_api = { workspace = true }
|
||||
|
@ -47,7 +47,8 @@ stylo_atoms = { workspace = true }
|
|||
stylo_traits = { workspace = true }
|
||||
uuid = { workspace = true }
|
||||
webdriver = { workspace = true }
|
||||
webgpu = { path = "../../webgpu" }
|
||||
webgpu_traits = { workspace = true }
|
||||
webrender_api = { workspace = true }
|
||||
webrender_traits = { workspace = true }
|
||||
webxr-api = { workspace = true, features = ["ipc"] }
|
||||
wgpu-core = { workspace = true, optional = true }
|
||||
|
|
|
@ -55,7 +55,7 @@ use strum_macros::IntoStaticStr;
|
|||
use style_traits::{CSSPixel, SpeculativePainter};
|
||||
use stylo_atoms::Atom;
|
||||
#[cfg(feature = "webgpu")]
|
||||
use webgpu::WebGPUMsg;
|
||||
use webgpu_traits::WebGPUMsg;
|
||||
use webrender_api::units::DevicePixel;
|
||||
use webrender_api::{DocumentId, ImageKey};
|
||||
use webrender_traits::CrossProcessCompositorApi;
|
||||
|
|
|
@ -24,7 +24,7 @@ use servo_url::{ImmutableOrigin, ServoUrl};
|
|||
use strum_macros::IntoStaticStr;
|
||||
use style_traits::CSSPixel;
|
||||
#[cfg(feature = "webgpu")]
|
||||
use webgpu::{WebGPU, WebGPUAdapterResponse, wgc};
|
||||
use webgpu_traits::{WebGPU, WebGPUAdapterResponse};
|
||||
use webrender_api::ImageKey;
|
||||
|
||||
use crate::mem::MemoryReportResult;
|
||||
|
@ -205,8 +205,8 @@ pub enum ScriptMsg {
|
|||
/// Create a WebGPU Adapter instance
|
||||
RequestAdapter(
|
||||
IpcSender<WebGPUAdapterResponse>,
|
||||
wgc::instance::RequestAdapterOptions,
|
||||
wgc::id::AdapterId,
|
||||
wgpu_core::instance::RequestAdapterOptions,
|
||||
wgpu_core::id::AdapterId,
|
||||
),
|
||||
#[cfg(feature = "webgpu")]
|
||||
/// Get WebGPU channel
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue