[gtk+/gtk-3-22] menu: Avoid cancelling the menu on GTK+ grabs inside the GtkMenu



commit 26d8a6dfbac5180dce71d1f2edc7029cfa2773ef
Author: Carlos Garnacho <carlosg gnome org>
Date:   Thu Aug 10 11:56:47 2017 +0200

    menu: Avoid cancelling the menu on GTK+ grabs inside the GtkMenu
    
    Allows again sliders as menuitems, broken by commit 9b032073.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=786029

 gtk/gtkmenu.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkmenu.c b/gtk/gtkmenu.c
index 2308040..c443cfe 100644
--- a/gtk/gtkmenu.c
+++ b/gtk/gtkmenu.c
@@ -6183,7 +6183,8 @@ gtk_menu_grab_notify (GtkWidget *widget,
   group = gtk_window_get_group (GTK_WINDOW (toplevel));
   grab = gtk_window_group_get_current_grab (group);
 
-  if (GTK_MENU_SHELL (widget)->priv->active && !GTK_IS_MENU_SHELL (grab))
+  if (GTK_MENU_SHELL (widget)->priv->active && !GTK_IS_MENU_SHELL (grab) &&
+      !gtk_widget_is_ancestor (grab, widget))
     gtk_menu_shell_cancel (GTK_MENU_SHELL (widget));
 
   menu->priv->drag_scroll_started = FALSE;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]