diff finch/libgnt/gntmenu.c @ 18079:c885a9ccd301

propagate from branch 'im.pidgin.pidgin' (head 03da073664bc840f76d0cec53eea61517337c5a7) to branch 'im.pidgin.pidgin.2.1.0' (head 2eee4d84a7977a4f51d95b9b57910625dc3e9085)
author Luke Schierer <lschiere@pidgin.im>
date Fri, 08 Jun 2007 13:25:28 +0000
parents 08776fc5c06f
children 9a0f99ea664d ac904659104f
line wrap: on
line diff
--- a/finch/libgnt/gntmenu.c	Fri Jun 08 12:52:35 2007 +0000
+++ b/finch/libgnt/gntmenu.c	Fri Jun 08 13:25:28 2007 +0000
@@ -1,3 +1,25 @@
+/**
+ * GNT - The GLib Ncurses Toolkit
+ *
+ * GNT is the legal property of its developers, whose names are too numerous
+ * to list here.  Please refer to the COPYRIGHT file distributed with this
+ * source distribution.
+ *
+ * This library is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
 #include "gntmenu.h"
 #include "gntmenuitemcheck.h"
 
@@ -220,7 +242,10 @@
 static void
 gnt_menu_hide(GntWidget *widget)
 {
-	GntMenu *menu = GNT_MENU(widget);
+	GntMenu *sub, *menu = GNT_MENU(widget);
+
+	while ((sub = menu->submenu))
+		gnt_widget_hide(GNT_WIDGET(sub));
 	if (menu->parentmenu)
 		menu->parentmenu->submenu = NULL;
 }