mirror of
https://github.com/servo/servo.git
synced 2025-08-05 21:50:18 +01:00
Implement pointerMove webdriver action
This commit is contained in:
parent
2a9b2fe027
commit
f064883e07
9 changed files with 306 additions and 28 deletions
|
@ -522,19 +522,21 @@ impl<Window: WindowMethods + ?Sized> IOCompositor<Window> {
|
|||
Msg::WebDriverMouseButtonEvent(mouse_event_type, mouse_button, x, y),
|
||||
ShutdownState::NotShuttingDown,
|
||||
) => {
|
||||
let dppx = self.device_pixels_per_page_px();
|
||||
let point = dppx.transform_point(Point2D::new(x, y));
|
||||
self.on_mouse_window_event_class(match mouse_event_type {
|
||||
MouseEventType::Click => {
|
||||
MouseWindowEvent::Click(mouse_button, DevicePoint::new(x, y))
|
||||
},
|
||||
MouseEventType::MouseDown => {
|
||||
MouseWindowEvent::MouseDown(mouse_button, DevicePoint::new(x, y))
|
||||
},
|
||||
MouseEventType::MouseUp => {
|
||||
MouseWindowEvent::MouseUp(mouse_button, DevicePoint::new(x, y))
|
||||
},
|
||||
MouseEventType::Click => MouseWindowEvent::Click(mouse_button, point),
|
||||
MouseEventType::MouseDown => MouseWindowEvent::MouseDown(mouse_button, point),
|
||||
MouseEventType::MouseUp => MouseWindowEvent::MouseUp(mouse_button, point),
|
||||
});
|
||||
},
|
||||
|
||||
(Msg::WebDriverMouseMoveEvent(x, y), ShutdownState::NotShuttingDown) => {
|
||||
let dppx = self.device_pixels_per_page_px();
|
||||
let point = dppx.transform_point(Point2D::new(x, y));
|
||||
self.on_mouse_window_move_event_class(DevicePoint::new(point.x, point.y));
|
||||
},
|
||||
|
||||
(Msg::PendingPaintMetric(pipeline_id, epoch), _) => {
|
||||
self.pending_paint_metrics.insert(pipeline_id, epoch);
|
||||
},
|
||||
|
|
|
@ -110,6 +110,8 @@ pub enum Msg {
|
|||
LoadComplete(TopLevelBrowsingContextId),
|
||||
/// WebDriver mouse button event
|
||||
WebDriverMouseButtonEvent(MouseEventType, MouseButton, f32, f32),
|
||||
/// WebDriver mouse move event
|
||||
WebDriverMouseMoveEvent(f32, f32),
|
||||
|
||||
/// Get Window Informations size and position.
|
||||
GetClientWindow(IpcSender<(DeviceIntSize, DeviceIntPoint)>),
|
||||
|
@ -137,6 +139,7 @@ impl Debug for Msg {
|
|||
Msg::PendingPaintMetric(..) => write!(f, "PendingPaintMetric"),
|
||||
Msg::LoadComplete(..) => write!(f, "LoadComplete"),
|
||||
Msg::WebDriverMouseButtonEvent(..) => write!(f, "WebDriverMouseButtonEvent"),
|
||||
Msg::WebDriverMouseMoveEvent(..) => write!(f, "WebDriverMouseMoveEvent"),
|
||||
Msg::GetClientWindow(..) => write!(f, "GetClientWindow"),
|
||||
Msg::GetScreenSize(..) => write!(f, "GetScreenSize"),
|
||||
Msg::GetScreenAvailSize(..) => write!(f, "GetScreenAvailSize"),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue