diff --git a/gtk/gtkmenu.c b/gtk/gtkmenu.c index c4c84313cc..ee24b724cc 100644 --- a/gtk/gtkmenu.c +++ b/gtk/gtkmenu.c @@ -105,6 +105,8 @@ #include +#include /* for _gdk_event_get_pointer_emulated() */ + #include "gtkaccellabel.h" #include "gtkaccelmap.h" #include "gtkadjustment.h" @@ -3554,6 +3556,9 @@ gtk_menu_scroll (GtkWidget *widget, { GtkMenu *menu = GTK_MENU (widget); + if (_gdk_event_get_pointer_emulated ((GdkEvent *) event)) + return FALSE; + switch (event->direction) { case GDK_SCROLL_RIGHT: @@ -3565,7 +3570,7 @@ gtk_menu_scroll (GtkWidget *widget, gtk_menu_scroll_by (menu, - MENU_SCROLL_STEP2); break; case GDK_SCROLL_SMOOTH: - gtk_menu_scroll_by (menu, event->delta_y); + gtk_menu_scroll_by (menu, event->delta_y * MENU_SCROLL_STEP2); break; }