| Index: content/renderer/gpu/gpu_benchmarking_extension.cc
|
| diff --git a/content/renderer/gpu/gpu_benchmarking_extension.cc b/content/renderer/gpu/gpu_benchmarking_extension.cc
|
| index 366d0a8b68aa219db1eab3446ce393848b4eefc8..27038d732042457f92bb8ef9693ad3bfb8a3848b 100644
|
| --- a/content/renderer/gpu/gpu_benchmarking_extension.cc
|
| +++ b/content/renderer/gpu/gpu_benchmarking_extension.cc
|
| @@ -289,6 +289,22 @@ bool BeginSmoothScroll(v8::Isolate* isolate,
|
| if (!context.Init(false))
|
| return false;
|
|
|
| + // Convert coordinates from CSS pixels to density independent pixels (DIPs).
|
| + float page_scale_factor = context.web_view()->pageScaleFactor();
|
| +
|
| + if (gesture_source_type == SyntheticGestureParams::MOUSE_INPUT) {
|
| + // Ensure the mouse is centered and visible, in case it will
|
| + // trigger any hover or mousemove effects.
|
| + blink::WebRect contentRect =
|
| + context.web_view()->mainFrame()->visibleContentRect();
|
| + blink::WebMouseEvent mouseMove;
|
| + mouseMove.type = blink::WebInputEvent::MouseMove;
|
| + mouseMove.x = (contentRect.x + contentRect.width / 2) * page_scale_factor;
|
| + mouseMove.y = (contentRect.y + contentRect.height / 2) * page_scale_factor;
|
| + context.web_view()->handleInputEvent(mouseMove);
|
| + context.web_view()->setCursorVisibilityState(true);
|
| + }
|
| +
|
| scoped_refptr<CallbackAndContext> callback_and_context =
|
| new CallbackAndContext(
|
| isolate, callback, context.web_frame()->mainWorldScriptContext());
|
| @@ -296,9 +312,6 @@ bool BeginSmoothScroll(v8::Isolate* isolate,
|
| scoped_ptr<SyntheticSmoothScrollGestureParams> gesture_params(
|
| new SyntheticSmoothScrollGestureParams);
|
|
|
| - // Convert coordinates from CSS pixels to density independent pixels (DIPs).
|
| - float page_scale_factor = context.web_view()->pageScaleFactor();
|
| -
|
| if (gesture_source_type < 0 ||
|
| gesture_source_type > SyntheticGestureParams::GESTURE_SOURCE_TYPE_MAX) {
|
| return false;
|
|
|