[Xfce4-commits] <xfwm4:xfce-4.6> Fix hang when cancelling a submenu (bug #6562)

Olivier Fourdan noreply at xfce.org
Fri Dec 3 12:48:01 CET 2010


Updating branch refs/heads/xfce-4.6
         to 61fc4d34aac9f982fc5fdd81b5896468d55d8c15 (commit)
       from d5f74510f3df9f57deead51a1ccc2b73d2fdcbc4 (commit)

commit 61fc4d34aac9f982fc5fdd81b5896468d55d8c15
Author: Olivier Fourdan <fourdan at xfce.org>
Date:   Fri Dec 3 11:14:02 2010 +0100

    Fix hang when cancelling a submenu (bug #6562)

 src/menu.c |    7 +++----
 src/menu.h |    1 -
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/menu.c b/src/menu.c
index 2ad3569..87aa966 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -251,6 +251,7 @@ menu_default (GdkScreen *gscr, Window xid, MenuOp ops, MenuOp insensitive, MenuF
                     }
                     ws_menu = menu_workspace (menu, insensitive, ws, nws, wsn, wsn_items);
                     gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), ws_menu);
+                    g_signal_connect (GTK_OBJECT (ws_menu), "selection-done", GTK_SIGNAL_FUNC (menu_closed), menu);
                     break;
                 default:
                     if (menuitems[i].image_name)
@@ -282,19 +283,17 @@ menu_default (GdkScreen *gscr, Window xid, MenuOp ops, MenuOp insensitive, MenuF
         }
         ++i;
     }
-    menu_connect (menu);
+    g_signal_connect (GTK_OBJECT (menu->menu), "selection-done", GTK_SIGNAL_FUNC (menu), menu);
 
     return (menu);
 }
 
-Menu *
+static Menu *
 menu_connect (Menu * menu)
 {
     TRACE ("entering menu_connect");
     g_return_val_if_fail (menu != NULL, NULL);
     g_return_val_if_fail (GTK_IS_MENU (menu->menu), NULL);
-    g_signal_connect (GTK_OBJECT (menu->menu), "selection_done",
-        GTK_SIGNAL_FUNC (menu_closed), menu);
     return (menu);
 }
 
diff --git a/src/menu.h b/src/menu.h
index 8aa175a..6c6b91d 100644
--- a/src/menu.h
+++ b/src/menu.h
@@ -107,7 +107,6 @@ Menu                    *menu_default                           (GdkScreen *,
                                                                  gint,
                                                                  eventFilterSetup*,
                                                                  gpointer);
-Menu                    *menu_connect                           (Menu *);
 GtkWidget               *menu_item_connect                      (GtkWidget *,
                                                                  MenuData *);
 gboolean                 menu_is_opened                         (void);



More information about the Xfce4-commits mailing list