From 3b79766b839a6f8b8922daf7912cc3e360e1a9ca Mon Sep 17 00:00:00 2001 From: Thaddaeus Tintenfisch Date: Wed, 25 Mar 2015 00:10:09 +0100 Subject: [PATCH] Fix Gdk-CRITICAL error Call gtk_grab_add() after the context menu has been mapped to fix the following error: Gdk-CRITICAL **: IA__gdk_window_get_window_type: assertion 'GDK_IS_WINDOW (window)' failed --- thunar/thunar-gtk-extensions.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/thunar/thunar-gtk-extensions.c b/thunar/thunar-gtk-extensions.c index b66601f..0c315e7 100644 --- a/thunar/thunar-gtk-extensions.c +++ b/thunar/thunar-gtk-extensions.c @@ -165,10 +165,10 @@ thunar_gtk_menu_run (GtkMenu *menu, gtk_menu_set_screen (menu, gtk_widget_get_screen (GTK_WIDGET (parent))); /* run an internal main loop */ - gtk_grab_add (GTK_WIDGET (menu)); loop = g_main_loop_new (NULL, FALSE); signal_id = g_signal_connect_swapped (G_OBJECT (menu), "deactivate", G_CALLBACK (g_main_loop_quit), loop); gtk_menu_popup (menu, NULL, NULL, func, data, button, activate_time); + gtk_grab_add (GTK_WIDGET (menu)); g_main_loop_run (loop); g_signal_handler_disconnect (G_OBJECT (menu), signal_id); g_main_loop_unref (loop); -- 2.1.4