2008-11-28 Alberto Garcia <agarcia@igalia.com>
authorAlberto Garcia <agarcia@igalia.com>
Fri, 28 Nov 2008 14:22:53 +0000 (14:22 +0000)
committerAlberto Garcia <agarcia@igalia.com>
Fri, 28 Nov 2008 14:22:53 +0000 (14:22 +0000)
* src/hildon-app-menu.c (hildon_app_menu_show)
(hildon_app_menu_class_init): Don't show the menu if it's empty.

Fixes: NB#93890 (Empty HildonAppMenu is pop-up)

ChangeLog
src/hildon-app-menu.c

index 54f9649..5ea91b3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2008-11-28  Alberto Garcia  <agarcia@igalia.com>
+
+       * src/hildon-app-menu.c (hildon_app_menu_show)
+       (hildon_app_menu_class_init): Don't show the menu if it's empty.
+
+       Fixes: NB#93890 (Empty HildonAppMenu is pop-up)
+
 2008-11-27  Claudio Saavedra  <csaavedra@igalia.com>
 
        * src/hildon-picker-dialog.c:
index 6f85b3e..f2c8922 100644 (file)
@@ -355,6 +355,17 @@ remove_item_from_list                           (GList    **list,
 }
 
 static void
+hildon_app_menu_show                            (GtkWidget *widget)
+{
+    HildonAppMenuPrivate *priv = HILDON_APP_MENU_GET_PRIVATE(widget);
+
+    /* Show the menu only if it's not empty */
+    if (priv->buttons || priv->filters) {
+        GTK_WIDGET_CLASS (hildon_app_menu_parent_class)->show (widget);
+    }
+}
+
+static void
 hildon_app_menu_map                             (GtkWidget *widget)
 {
     HildonAppMenuPrivate *priv = HILDON_APP_MENU_GET_PRIVATE(widget);
@@ -777,6 +788,7 @@ hildon_app_menu_class_init                      (HildonAppMenuClass *klass)
     GtkWidgetClass *widget_class = (GtkWidgetClass *)klass;
 
     gobject_class->finalize = hildon_app_menu_finalize;
+    widget_class->show = hildon_app_menu_show;
     widget_class->map = hildon_app_menu_map;
     widget_class->unmap = hildon_app_menu_unmap;
     widget_class->realize = hildon_app_menu_realize;