]> Pileus Git - ~andy/gtk/commitdiff
menu: Handle smooth scrolling
authorCarlos Garnacho <carlosg@gnome.org>
Thu, 23 Feb 2012 13:14:33 +0000 (14:14 +0100)
committerMatthias Clasen <mclasen@redhat.com>
Thu, 1 Mar 2012 21:29:00 +0000 (16:29 -0500)
event->scroll.delta_y will be used to scroll the menu contents,
GDK_SMOOTH_SCROLL_MASK has been set as well

gtk/gtkmenu.c

index 8ecf9bf05d9625d452f542659f0d775b5909aa51..b7f95e33612918db5b448ce4d51bf857683a7903 100644 (file)
@@ -1407,6 +1407,7 @@ popup_grab_on_window (GdkWindow *window,
   if (pointer &&
       gdk_device_grab (pointer, window,
                        GDK_OWNERSHIP_WINDOW, TRUE,
+                       GDK_SMOOTH_SCROLL_MASK |
                        GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
                        GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK |
                        GDK_POINTER_MOTION_MASK,
@@ -3845,6 +3846,9 @@ gtk_menu_scroll (GtkWidget      *widget,
     case GDK_SCROLL_UP:
       gtk_menu_scroll_by (menu, - MENU_SCROLL_STEP2);
       break;
+    case GDK_SCROLL_SMOOTH:
+      gtk_menu_scroll_by (menu, event->delta_y);
+      break;
     }
 
   return TRUE;