mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
This is a step toward the renderer-per-WebView goal. It moves various details out of `IOCompositor`. - Image output: This is moved to servoshell as now applications can access the image contents of a `WebView` via `RenderingContext::read_to_image`. Most options for this are moved to `ServoShellPreferences` apart from `wait_for_stable_image` as this requires a specific kind of coordination in the `ScriptThread` that is also very expensive. Instead, paint is now simply delayed until a stable image is reached and `WebView::paint()` returns a boolean. Maybe this can be revisited in the future. - Shutdown: Shutdown is now managed by libservo itself. Shutdown state is shared between the compositor and `Servo` instance. In the future, this sharing might be unecessary. - `CompositeTarget` has been removed entirely. This no longer needs to be passed when creating a Servo instance. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <yuweiwu@pm.me>
46 lines
1.2 KiB
TOML
46 lines
1.2 KiB
TOML
[package]
|
|
name = "compositing"
|
|
version.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
edition.workspace = true
|
|
publish.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lib]
|
|
name = "compositing"
|
|
path = "lib.rs"
|
|
|
|
[features]
|
|
default = []
|
|
multiview = []
|
|
tracing = ["dep:tracing"]
|
|
webxr = ["dep:webxr"]
|
|
|
|
[dependencies]
|
|
base = { workspace = true }
|
|
bitflags = { workspace = true }
|
|
compositing_traits = { workspace = true }
|
|
crossbeam-channel = { workspace = true }
|
|
embedder_traits = { workspace = true }
|
|
euclid = { workspace = true }
|
|
fnv = { workspace = true }
|
|
gleam = { workspace = true }
|
|
ipc-channel = { workspace = true }
|
|
libc = { workspace = true }
|
|
log = { workspace = true }
|
|
net = { path = "../net" }
|
|
pixels = { path = "../pixels" }
|
|
profile_traits = { workspace = true }
|
|
script_traits = { workspace = true }
|
|
servo_config = { path = "../config" }
|
|
servo_geometry = { path = "../geometry" }
|
|
style_traits = { workspace = true }
|
|
tracing = { workspace = true, optional = true }
|
|
webrender = { workspace = true }
|
|
webrender_api = { workspace = true }
|
|
webrender_traits = { workspace = true }
|
|
webxr = { path = "../webxr", optional = true }
|
|
|
|
[dev-dependencies]
|
|
surfman = { workspace = true }
|