diff options
author | Martin Robinson <mrobinson@igalia.com> | 2025-04-06 00:13:29 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-05 22:13:29 +0000 |
commit | 6031a12fd1fa4aee8368e0b3dc0cb792caac56bc (patch) | |
tree | cc91327012041a24bd1b71c7768660a2efbe862f /components/shared/compositing | |
parent | a67409fb253b3cb6dd1adbaf9d3cad47941f4993 (diff) | |
download | servo-6031a12fd1fa4aee8368e0b3dc0cb792caac56bc.tar.gz servo-6031a12fd1fa4aee8368e0b3dc0cb792caac56bc.zip |
Move `ScriptToConstellationMsg` to `constellation_traits` (#36364)
This is the last big change necessary to create the
`constellation_traits` crate. This moves the data structure for messages
that originate from the `ScriptThread` and are sent to the
`Contellation` to `constellation_traits`, effectively splitting
`script_traits` in half. Before, `script_traits` was responsible for
exposing the API of both the `ScriptThread` and the `Constellation` to
the rest of Servo.
- Data structures that are used by `ScriptToConstellationMsg` are moved
to `constellation_traits`. The dependency graph looks a bit like this:
`script_layout_interface` depends on `script_traits` depends on
`constellation_traits` depends on `embedder_traits`.
- Data structures that are used in the embedding layer
(`UntrustedNodeAddress`, `CompositorHitTestResult`, `TouchEventResult`
and `AnimationState`) are moved to embedder_traits, to avoid a
dependency cycle between `webrender_traits` and
`constellation_traits`.
- Types dealing with MessagePorts and serialization are moved to
`constellation_traits::message_port`.
Testing: This is covered by existing tests as it just moves types
around.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Diffstat (limited to 'components/shared/compositing')
-rw-r--r-- | components/shared/compositing/lib.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/components/shared/compositing/lib.rs b/components/shared/compositing/lib.rs index 738619ffc31..9c13afb8dc3 100644 --- a/components/shared/compositing/lib.rs +++ b/components/shared/compositing/lib.rs @@ -8,12 +8,13 @@ use std::fmt::{Debug, Error, Formatter}; use base::id::{PipelineId, WebViewId}; use crossbeam_channel::{Receiver, Sender}; -use embedder_traits::{EventLoopWaker, MouseButton, MouseButtonAction}; +use embedder_traits::{ + AnimationState, EventLoopWaker, MouseButton, MouseButtonAction, TouchEventResult, +}; use euclid::Rect; use ipc_channel::ipc::IpcSender; use log::warn; use pixels::Image; -use script_traits::{AnimationState, TouchEventResult}; use strum_macros::IntoStaticStr; use style_traits::CSSPixel; use webrender_api::DocumentId; |