Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(611)

Unified Diff: content/browser/renderer_host/render_widget_host_view_mac.mm

Issue 1308553007: Convert MouseEvents from DIPS to Pixels before passing it to surfaces for hittesting. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fixing mac Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/renderer_host/render_widget_host_view_mac.mm
diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
index fb8951657c224d84ff28b942dad3ade8ec639b68..626f823e337da01e2a1a722a60ed773fa7df6b07 100644
--- a/content/browser/renderer_host/render_widget_host_view_mac.mm
+++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
@@ -1593,8 +1593,14 @@ uint32_t RenderWidgetHostViewMac::GetSurfaceIdNamespace() {
uint32_t RenderWidgetHostViewMac::SurfaceIdNamespaceAtPoint(
const gfx::Point& point,
gfx::Point* transformed_point) {
- cc::SurfaceId id =
- delegated_frame_host_->SurfaceIdAtPoint(point, transformed_point);
+ float scale_factor = gfx::Screen::GetScreenFor(cocoa_view_)
+ ->GetDisplayNearestWindow(cocoa_view_)
+ .device_scale_factor();
+ gfx::Point point_in_pixels = gfx::ConvertPointToPixel(scale_factor, point);
+ cc::SurfaceId id = delegated_frame_host_->SurfaceIdAtPoint(point_in_pixels,
+ transformed_point);
+ *transformed_point = gfx::ConvertPointToDIP(scale_factor, *transformed_point);
+
// It is possible that the renderer has not yet produced a surface, in which
// case we return our current namespace.
if (id.is_null())

Powered by Google App Engine
This is Rietveld 408576698