mirror of
https://github.com/servo/servo
synced 2026-05-10 00:52:08 +02:00
`UnprivilegedPipelineContent` contains all of the data necessary to create a new `ScriptThread` with an initial `Pipeline` in a new process. This change reuses the `InitialScriptState` and `InitialPipelineState` structs inside `UnprivilegedPipelineContent` and renames it to `NewScriptEventLoopProcessInfo` to clarify what it does. In addition, `InitialScriptState` also repeated much of the data of `NewPipelineInfo`, which is now deduplicated and passed separately to the `ScriptThreadFactory`. The overall goal here is to make `ScriptThread` and `Pipeline` creation separate. A `ScriptThread` contains many `Pipeline`s which come and go, so it should not depend on a single creation `Pipeline`. This is the first step toward doing that. Some inputs to `ScriptThreadFactory` differ based on whether the new `ScriptThread` is created in a new process or not. This change makes it so that these input are passed as extra arguments. Finally these changes have revealed a couple members of data structures that aren't used. These have been removed. Testing: This is just a refactor and shouldn't change behavior so is covered by existing tests. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
52 lines
1.6 KiB
TOML
52 lines
1.6 KiB
TOML
[package]
|
|
name = "script_traits"
|
|
version.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
edition.workspace = true
|
|
publish.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lib]
|
|
name = "script_traits"
|
|
path = "lib.rs"
|
|
|
|
[features]
|
|
bluetooth = ["bluetooth_traits"]
|
|
webgpu = ["webgpu_traits"]
|
|
|
|
[dependencies]
|
|
background_hang_monitor_api = { workspace = true }
|
|
base = { workspace = true }
|
|
bluetooth_traits = { workspace = true, optional = true }
|
|
canvas_traits = { workspace = true }
|
|
compositing_traits = { workspace = true }
|
|
constellation_traits = { workspace = true }
|
|
content-security-policy = { workspace = true }
|
|
crossbeam-channel = { workspace = true }
|
|
devtools_traits = { workspace = true }
|
|
embedder_traits = { workspace = true }
|
|
euclid = { workspace = true }
|
|
fonts_traits = { workspace = true }
|
|
ipc-channel = { workspace = true }
|
|
keyboard-types = { workspace = true }
|
|
log = { workspace = true }
|
|
malloc_size_of = { workspace = true }
|
|
malloc_size_of_derive = { workspace = true }
|
|
media = { path = "../../media" }
|
|
net_traits = { workspace = true }
|
|
pixels = { path = "../../pixels" }
|
|
profile_traits = { workspace = true }
|
|
rustc-hash = { workspace = true }
|
|
serde = { workspace = true }
|
|
servo_config = { path = "../../config" }
|
|
servo_url = { path = "../../url" }
|
|
storage_traits = { workspace = true }
|
|
strum = { workspace = true, features = ["derive"] }
|
|
strum_macros = { workspace = true }
|
|
stylo_atoms = { workspace = true }
|
|
stylo_traits = { workspace = true }
|
|
webgpu_traits = { workspace = true, optional = true }
|
|
webrender_api = { workspace = true }
|
|
webxr-api = { workspace = true, features = ["ipc"] }
|