mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
libservo: Stop using script_traits
in the embedding layer (#35185)
Many types used directly in the `libservo` API are in the `script_traits` crate, which was created to break circular dependencies. Move all API exposed types to `embedder_traits` which now contains types exposed via the `libservo` embedding API. Also expose these at the root of the `libservo` `servo` crate so that the API won't break when they move around in the future. The idea with `embedder_traits` in the future is that it contains types that are available throughout servo because they are used in the embedding API and thus should have minimal dependencies on other Servo crates (a bit like `base`). Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
parent
78b90030bd
commit
a1cf0cbf86
39 changed files with 330 additions and 334 deletions
|
@ -19,7 +19,7 @@ use compositing_traits::{
|
|||
CompositionPipeline, CompositorMsg, CompositorReceiver, ConstellationMsg, SendableFrameTree,
|
||||
};
|
||||
use crossbeam_channel::Sender;
|
||||
use embedder_traits::Cursor;
|
||||
use embedder_traits::{Cursor, MouseButton, MouseEventType, TouchEventType, TouchId, WheelDelta};
|
||||
use euclid::{Point2D, Rect, Scale, Transform3D, Vector2D};
|
||||
use fnv::{FnvHashMap, FnvHashSet};
|
||||
use image::{DynamicImage, ImageFormat};
|
||||
|
@ -31,8 +31,8 @@ use profile_traits::time::{self as profile_time, ProfilerCategory};
|
|||
use profile_traits::time_profile;
|
||||
use script_traits::CompositorEvent::{MouseButtonEvent, MouseMoveEvent, TouchEvent, WheelEvent};
|
||||
use script_traits::{
|
||||
AnimationState, AnimationTickType, ConstellationControlMsg, MouseButton, MouseEventType,
|
||||
ScrollState, TouchEventType, TouchId, WheelDelta, WindowSizeData, WindowSizeType,
|
||||
AnimationState, AnimationTickType, ConstellationControlMsg, ScrollState, WindowSizeData,
|
||||
WindowSizeType,
|
||||
};
|
||||
use servo_geometry::{DeviceIndependentPixel, FramebufferUintLength};
|
||||
use style_traits::{CSSPixel, PinchZoomFactor};
|
||||
|
|
|
@ -2,9 +2,10 @@
|
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
||||
|
||||
use embedder_traits::TouchId;
|
||||
use euclid::{Point2D, Scale, Vector2D};
|
||||
use log::{debug, warn};
|
||||
use script_traits::{EventResult, TouchId};
|
||||
use script_traits::EventResult;
|
||||
use webrender_api::units::{DeviceIntPoint, DevicePixel, LayoutVector2D};
|
||||
|
||||
use self::TouchState::*;
|
||||
|
|
|
@ -8,15 +8,14 @@ use std::fmt::{Debug, Error, Formatter};
|
|||
use std::time::Duration;
|
||||
|
||||
use base::id::{PipelineId, TopLevelBrowsingContextId};
|
||||
use embedder_traits::EventLoopWaker;
|
||||
use embedder_traits::{
|
||||
ClipboardEventType, EventLoopWaker, GamepadEvent, MediaSessionActionType, MouseButton, Theme,
|
||||
TouchEventType, TouchId, TraversalDirection, WheelDelta,
|
||||
};
|
||||
use euclid::Scale;
|
||||
use keyboard_types::{CompositionEvent, KeyboardEvent};
|
||||
use libc::c_void;
|
||||
use net::protocols::ProtocolRegistry;
|
||||
use script_traits::{
|
||||
ClipboardEventType, GamepadEvent, MediaSessionActionType, MouseButton, Theme, TouchEventType,
|
||||
TouchId, TraversalDirection, WheelDelta,
|
||||
};
|
||||
use servo_geometry::{DeviceIndependentIntRect, DeviceIndependentIntSize, DeviceIndependentPixel};
|
||||
use servo_url::ServoUrl;
|
||||
use webrender_api::units::{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue