Bug 1244546 part 1 - Apply proper unit conversion for SynthesizeNativeMouseEvent. draft
authorXidorn Quan <quanxunzhen@gmail.com>
Thu, 10 Mar 2016 17:42:38 +0800
changeset 338981 9d558262caffed0858121b7a68ca7d9c5a660176
parent 338980 e4aba46543bc0612d3854e488b9eecbf14ad3e3d
child 338982 7305da141428dcb9c953d395acd76e3916bf63b2
push id12624
push userxquan@mozilla.com
push dateThu, 10 Mar 2016 09:47:19 +0000
bugs1244546
milestone48.0a1
Bug 1244546 part 1 - Apply proper unit conversion for SynthesizeNativeMouseEvent. MozReview-Commit-ID: 6XLzx7CyFEj
widget/gtk/nsWindow.cpp
--- a/widget/gtk/nsWindow.cpp
+++ b/widget/gtk/nsWindow.cpp
@@ -6818,17 +6818,18 @@ nsWindow::SynthesizeNativeMouseEvent(Lay
 #endif
 
     gdk_event_put(&event);
   } else {
     // We don't support specific events other than button-release. In case
     // aNativeMessage != GDK_BUTTON_RELEASE we'll synthesize a motion event
     // that will be emitted by gdk_display_warp_pointer().
     GdkScreen* screen = gdk_window_get_screen(mGdkWindow);
-    gdk_display_warp_pointer(display, screen, aPoint.x, aPoint.y);
+    GdkPoint point = DevicePixelsToGdkPointRoundDown(aPoint);
+    gdk_display_warp_pointer(display, screen, point.x, point.y);
   }
 
   return NS_OK;
 }
 
 nsresult
 nsWindow::SynthesizeNativeMouseScrollEvent(mozilla::LayoutDeviceIntPoint aPoint,
                                            uint32_t aNativeMessage,