Index: content/browser/renderer_host/render_widget_host_view_gtk.cc |
diff --git a/content/browser/renderer_host/render_widget_host_view_gtk.cc b/content/browser/renderer_host/render_widget_host_view_gtk.cc |
index 9ea362595c65c2a4b7be35442fad4ae538d42ab2..1fe5d4c3e54070707a1b091f05efc165ce15b2f1 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_gtk.cc |
+++ b/content/browser/renderer_host/render_widget_host_view_gtk.cc |
@@ -29,6 +29,7 @@ |
#include "content/browser/renderer_host/gtk_im_context_wrapper.h" |
#include "content/browser/renderer_host/gtk_key_bindings_handler.h" |
#include "content/browser/renderer_host/gtk_window_utils.h" |
+#include "content/browser/renderer_host/input/web_input_event_builders_gtk.h" |
#include "content/browser/renderer_host/render_view_host_delegate.h" |
#include "content/browser/renderer_host/render_view_host_impl.h" |
#include "content/common/gpu/gpu_messages.h" |
@@ -40,7 +41,6 @@ |
#include "skia/ext/platform_canvas.h" |
#include "third_party/WebKit/public/web/WebInputEvent.h" |
#include "third_party/WebKit/public/web/WebScreenInfo.h" |
-#include "third_party/WebKit/public/web/gtk/WebInputEventFactory.h" |
#include "ui/base/clipboard/scoped_clipboard_writer.h" |
#include "ui/base/x/active_window_watcher_x.h" |
#include "ui/base/x/x11_util.h" |
@@ -50,7 +50,6 @@ |
#include "ui/gfx/text_elider.h" |
#include "webkit/common/cursors/webcursor_gtk_data.h" |
-using WebKit::WebInputEventFactory; |
using WebKit::WebMouseWheelEvent; |
using WebKit::WebScreenInfo; |
@@ -70,10 +69,6 @@ namespace { |
const int kMaxWindowWidth = 10000; |
const int kMaxWindowHeight = 10000; |
-// See WebInputEventFactor.cpp for a reason for this being the default |
-// scroll size for linux. |
-const float kDefaultScrollPixelsPerTick = 160.0f / 3.0f; |
- |
const GdkColor kBGColor = |
#if defined(NDEBUG) |
{ 0, 0xff * 257, 0xff * 257, 0xff * 257 }; |
@@ -354,7 +349,7 @@ class RenderWidgetHostViewGtkWidget { |
RenderWidgetHostImpl* widget_host = |
RenderWidgetHostImpl::From(host_view->GetRenderWidgetHost()); |
if (widget_host) |
- widget_host->ForwardMouseEvent(WebInputEventFactory::mouseEvent(event)); |
+ widget_host->ForwardMouseEvent(WebMouseEventBuilder::Build(event)); |
// Although we did handle the mouse event, we need to let other handlers |
// run (in particular the one installed by WebContentsViewGtk). |
@@ -380,8 +375,7 @@ class RenderWidgetHostViewGtkWidget { |
host_view->ModifyEventForEdgeDragging(widget, event); |
- WebKit::WebMouseEvent mouse_event = |
- WebInputEventFactory::mouseEvent(event); |
+ WebKit::WebMouseEvent mouse_event = WebMouseEventBuilder::Build(event); |
if (host_view->mouse_locked_) { |
gfx::Point center = host_view->GetWidgetCenter(); |
@@ -431,8 +425,7 @@ class RenderWidgetHostViewGtkWidget { |
// additionally send this crossing event with the state indicating the |
// button is down, it causes problems with drag and drop in WebKit.) |
if (!(event->state & any_button_mask)) { |
- WebKit::WebMouseEvent mouse_event = |
- WebInputEventFactory::mouseEvent(event); |
+ WebKit::WebMouseEvent mouse_event = WebMouseEventBuilder::Build(event); |
host_view->ModifyEventMovementAndCoords(&mouse_event); |
// When crossing out and back into a render view the movement values |
// must represent the instantaneous movement of the mouse, not the jump |
@@ -500,7 +493,7 @@ class RenderWidgetHostViewGtkWidget { |
gdk_event_put(event); |
gdk_event_free(event); |
} |
- return num_clicks * kDefaultScrollPixelsPerTick; |
+ return num_clicks * WebMouseWheelEventBuilder::ScrollbarPixelsPerTick(); |
} |
static gboolean OnMouseScrollEvent(GtkWidget* widget, |
@@ -518,21 +511,23 @@ class RenderWidgetHostViewGtkWidget { |
event->direction = GDK_SCROLL_RIGHT; |
} |
- WebMouseWheelEvent web_event = WebInputEventFactory::mouseWheelEvent(event); |
+ WebMouseWheelEvent web_event = WebMouseWheelEventBuilder::Build(event); |
+ const float pixelsPerTick = |
+ WebMouseWheelEventBuilder::ScrollbarPixelsPerTick(); |
// We peek ahead at the top of the queue to look for additional pending |
// scroll events. |
if (event->direction == GDK_SCROLL_UP || |
event->direction == GDK_SCROLL_DOWN) { |
if (event->direction == GDK_SCROLL_UP) |
- web_event.deltaY = kDefaultScrollPixelsPerTick; |
+ web_event.deltaY = pixelsPerTick; |
else |
- web_event.deltaY = -kDefaultScrollPixelsPerTick; |
+ web_event.deltaY = -pixelsPerTick; |
web_event.deltaY += GetPendingScrollDelta(true, event->state); |
} else { |
if (event->direction == GDK_SCROLL_LEFT) |
- web_event.deltaX = kDefaultScrollPixelsPerTick; |
+ web_event.deltaX = pixelsPerTick; |
else |
- web_event.deltaX = -kDefaultScrollPixelsPerTick; |
+ web_event.deltaX = -pixelsPerTick; |
web_event.deltaX += GetPendingScrollDelta(false, event->state); |
} |
RenderWidgetHostImpl::From( |