aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-gtk/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'libdbusmenu-gtk/client.c')
-rw-r--r--libdbusmenu-gtk/client.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c
index 44f95fe..6970d59 100644
--- a/libdbusmenu-gtk/client.c
+++ b/libdbusmenu-gtk/client.c
@@ -453,6 +453,13 @@ activate_helper (GtkMenuShell * shell)
if (GTK_IS_MENU(parent)) {
activate_helper(GTK_MENU_SHELL(parent));
}
+
+ if (!GTK_MENU_SHELL (parent)->active) {
+ gtk_grab_add (parent);
+ GTK_MENU_SHELL (parent)->have_grab = TRUE;
+ GTK_MENU_SHELL (parent)->active = TRUE;
+ }
+
gtk_menu_shell_select_item(GTK_MENU_SHELL(parent), attach);
}
}