summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-10 23:33:54 +0000
committerestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-10 23:33:54 +0000
commit0b9803cdd8e63251ad6485608dc7c00d439c0729 (patch)
tree37cfa270905788f1bbdc20ea80be335a95bf7e9f
parentf144fb4173aad8dc24203750c82a2c757048ceee (diff)
downloadchromium_src-0b9803cdd8e63251ad6485608dc7c00d439c0729.zip
chromium_src-0b9803cdd8e63251ad6485608dc7c00d439c0729.tar.gz
chromium_src-0b9803cdd8e63251ad6485608dc7c00d439c0729.tar.bz2
Fill in more gtk callbacks in RenderWidgetHostViewGtk.
Mostly ripped directly from WebWidgetHostGtk. Review URL: http://codereview.chromium.org/24009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9531 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/renderer_host/render_widget_host_view_gtk.cc18
1 files changed, 15 insertions, 3 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_view_gtk.cc b/chrome/browser/renderer_host/render_widget_host_view_gtk.cc
index 5561505..31f14ad 100644
--- a/chrome/browser/renderer_host/render_widget_host_view_gtk.cc
+++ b/chrome/browser/renderer_host/render_widget_host_view_gtk.cc
@@ -72,18 +72,27 @@ class RenderWidgetHostViewGtkWidget {
static gboolean KeyPressReleaseEvent(GtkWidget* widget, GdkEventKey* event,
RenderWidgetHostViewGtk* host_view) {
+ WebKeyboardEvent wke(event);
+ host_view->GetRenderWidgetHost()->ForwardKeyboardEvent(wke);
+
+ // See note in webwidget_host_gtk.cc::HandleKeyPress().
+ if (event->type == GDK_KEY_PRESS) {
+ wke.type = WebKeyboardEvent::CHAR;
+ host_view->GetRenderWidgetHost()->ForwardKeyboardEvent(wke);
+ }
+
return FALSE;
}
static gboolean FocusIn(GtkWidget* widget, GdkEventFocus* focus,
RenderWidgetHostViewGtk* host_view) {
- NOTIMPLEMENTED();
+ host_view->GetRenderWidgetHost()->Focus();
return FALSE;
}
static gboolean FocusOut(GtkWidget* widget, GdkEventFocus* focus,
RenderWidgetHostViewGtk* host_view) {
- NOTIMPLEMENTED();
+ host_view->GetRenderWidgetHost()->Blur();
return FALSE;
}
@@ -97,12 +106,15 @@ class RenderWidgetHostViewGtkWidget {
static gboolean MouseMoveEvent(GtkWidget* widget, GdkEventMotion* event,
RenderWidgetHostViewGtk* host_view) {
+ WebMouseEvent wme(event);
+ host_view->GetRenderWidgetHost()->ForwardMouseEvent(wme);
return FALSE;
}
static gboolean MouseScrollEvent(GtkWidget* widget, GdkEventScroll* event,
RenderWidgetHostViewGtk* host_view) {
- NOTIMPLEMENTED();
+ WebMouseWheelEvent wmwe(event);
+ host_view->GetRenderWidgetHost()->ForwardWheelEvent(wmwe);
return FALSE;
}
};