aboutsummaryrefslogtreecommitdiffstats
path: root/components/shared/compositing
diff options
context:
space:
mode:
authorMartin Robinson <mrobinson@igalia.com>2025-04-06 00:13:29 +0200
committerGitHub <noreply@github.com>2025-04-05 22:13:29 +0000
commit6031a12fd1fa4aee8368e0b3dc0cb792caac56bc (patch)
treecc91327012041a24bd1b71c7768660a2efbe862f /components/shared/compositing
parenta67409fb253b3cb6dd1adbaf9d3cad47941f4993 (diff)
downloadservo-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.rs5
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;