diff options
author | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-01 18:17:29 +0000 |
---|---|---|
committer | estade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-01 18:17:29 +0000 |
commit | 752217f0e7253abfbcc2fd7964c05d3e22b05ef5 (patch) | |
tree | bfff80060f661d561067c22e707bebd8bc8d77c4 /chrome | |
parent | b44f9e527a014478f94a9bfa38d2ed1a3f1220e2 (diff) | |
download | chromium_src-752217f0e7253abfbcc2fd7964c05d3e22b05ef5.zip chromium_src-752217f0e7253abfbcc2fd7964c05d3e22b05ef5.tar.gz chromium_src-752217f0e7253abfbcc2fd7964c05d3e22b05ef5.tar.bz2 |
Linux: ctrl+scroll for zoom
BUG=12962
Review URL: http://codereview.chromium.org/118044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17334 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/tab_contents/tab_contents_view_gtk.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/chrome/browser/tab_contents/tab_contents_view_gtk.cc b/chrome/browser/tab_contents/tab_contents_view_gtk.cc index 0a8e898..e15d4db 100644 --- a/chrome/browser/tab_contents/tab_contents_view_gtk.cc +++ b/chrome/browser/tab_contents/tab_contents_view_gtk.cc @@ -62,6 +62,23 @@ gboolean OnMouseMove(GtkWidget* widget, GdkEventMotion* event, return FALSE; } +// See tab_contents_view_win.cc for discussion of mouse scroll zooming. +gboolean OnMouseScroll(GtkWidget* widget, GdkEventScroll* event, + TabContents* tab_contents) { + if ((event->state & gtk_accelerator_get_default_mod_mask()) == + GDK_CONTROL_MASK) { + if (event->direction == GDK_SCROLL_DOWN) { + tab_contents->delegate()->ContentsZoomChange(false); + return TRUE; + } else if (event->direction == GDK_SCROLL_UP) { + tab_contents->delegate()->ContentsZoomChange(true); + return TRUE; + } + } + + return FALSE; +} + // Used with gtk_container_foreach to change the sizes of the children of // |fixed_|. void SetSizeRequest(GtkWidget* widget, gpointer userdata) { @@ -124,6 +141,8 @@ RenderWidgetHostView* TabContentsViewGtk::CreateViewForWidget( G_CALLBACK(OnLeaveNotify), tab_contents()); g_signal_connect(content_view, "motion-notify-event", G_CALLBACK(OnMouseMove), tab_contents()); + g_signal_connect(content_view, "scroll-event", + G_CALLBACK(OnMouseScroll), tab_contents()); gtk_widget_add_events(content_view, GDK_LEAVE_NOTIFY_MASK | GDK_POINTER_MOTION_MASK); g_signal_connect(content_view, "button-press-event", |