aboutsummaryrefslogtreecommitdiffstats
path: root/components/shared/script/script_msg.rs
diff options
context:
space:
mode:
authorMartin Robinson <mrobinson@igalia.com>2024-05-17 14:28:58 +0200
committerGitHub <noreply@github.com>2024-05-17 12:28:58 +0000
commit3398fc017b994fff113342baab47718a44a37752 (patch)
tree9ec5881db059b0bda7d374ad4d0abe96319e5c25 /components/shared/script/script_msg.rs
parent1017533297889beca40be5f121629347963fbf27 (diff)
downloadservo-3398fc017b994fff113342baab47718a44a37752.tar.gz
servo-3398fc017b994fff113342baab47718a44a37752.zip
Move non-gfx things out of `gfx_traits` and create a `base` crate (#32296)
For a long time, `gfx_traits` has held a lot of things unrelated to graphics and also unrelated to the `gfx` crate (which is mostly about fonts). This is a cleanup which does a few things: 1. Move non `gfx` crate things out of `gfx_traits`. This is important in order to prevent dependency cycles with a different integration between layout, script, and fonts. 2. Rename the `msg` crate to `base`. It didn't really contain anything to do with messages and instead mostly holds ids, which are used across many different crates in Servo. This new crate will hold the *rare* data types that are widely used. Details: - All BackgroundHangMonitor-related things from base to a new `background_hang_monitor_api` crate. - Moved `TraversalDirection` to `script_traits` - Moved `Epoch`-related things from `gfx_traits` to `base`. - Moved `PrintTree` to base. This should be widely useful in Servo. - Moved `WebrenderApi` from `base` to `webrender_traits` and renamed it to `WebRenderFontApi`.
Diffstat (limited to 'components/shared/script/script_msg.rs')
-rw-r--r--components/shared/script/script_msg.rs21
1 files changed, 15 insertions, 6 deletions
diff --git a/components/shared/script/script_msg.rs b/components/shared/script/script_msg.rs
index a51859231ba..d750d33340d 100644
--- a/components/shared/script/script_msg.rs
+++ b/components/shared/script/script_msg.rs
@@ -5,18 +5,18 @@
use std::collections::{HashMap, VecDeque};
use std::fmt;
+use base::id::{
+ BroadcastChannelRouterId, BrowsingContextId, HistoryStateId, MessagePortId,
+ MessagePortRouterId, PipelineId, ServiceWorkerId, ServiceWorkerRegistrationId,
+ TopLevelBrowsingContextId,
+};
+use base::Epoch;
use canvas_traits::canvas::{CanvasId, CanvasMsg};
use devtools_traits::{ScriptToDevtoolsControlMsg, WorkerId};
use embedder_traits::{EmbedderMsg, MediaSessionEvent};
use euclid::default::Size2D as UntypedSize2D;
use euclid::Size2D;
-use gfx_traits::Epoch;
use ipc_channel::ipc::{IpcReceiver, IpcSender};
-use msg::constellation_msg::{
- BroadcastChannelRouterId, BrowsingContextId, HistoryStateId, MessagePortId,
- MessagePortRouterId, PipelineId, ServiceWorkerId, ServiceWorkerRegistrationId,
- TopLevelBrowsingContextId, TraversalDirection,
-};
use net_traits::request::RequestBuilder;
use net_traits::storage_thread::StorageType;
use net_traits::CoreResourceMsg;
@@ -492,3 +492,12 @@ pub enum SWManagerMsg {
/// <https://github.com/servo/servo/issues/24660>
PostMessageToClient,
}
+
+/// The direction of a history traversal
+#[derive(Clone, Copy, Debug, Deserialize, Eq, Hash, PartialEq, Serialize)]
+pub enum TraversalDirection {
+ /// Travel forward the given number of documents.
+ Forward(usize),
+ /// Travel backward the given number of documents.
+ Back(usize),
+}