From c12d7baeca0d1d21fbfe141a49ce09c23f75d57e Mon Sep 17 00:00:00 2001 From: Sven Herzberg Date: Fri, 8 Feb 2008 00:25:50 +0000 Subject: [PATCH] Adjust the code to match the documentation, examples, "common sense" and 2008-02-08 Sven Herzberg Adjust the code to match the documentation, examples, "common sense" and existing applications. * gtk/gtkaction.c: (_gtk_action_sync_menu_visible): take into account that a GtkMenu for a element doesn't have to have a GtkAction assigned svn path=/trunk/; revision=19497 --- ChangeLog | 9 +++++++++ gtk/gtkaction.c | 11 ++++++++--- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 085a0c9a30..28c6a3e4c7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2008-02-08 Sven Herzberg + + Adjust the code to match the documentation, examples, "common sense" + and existing applications. + + * gtk/gtkaction.c: (_gtk_action_sync_menu_visible): take into account + that a GtkMenu for a element doesn't have to have a GtkAction + assigned + 2008-02-07 Cody Russell * gdk/win32/gdkevents-win32.c diff --git a/gtk/gtkaction.c b/gtk/gtkaction.c index ce966e0476..14485a6c03 100644 --- a/gtk/gtkaction.c +++ b/gtk/gtkaction.c @@ -637,7 +637,8 @@ _gtk_action_sync_menu_visible (GtkAction *action, GtkWidget *proxy, gboolean empty) { - gboolean visible, hide_if_empty; + gboolean visible = TRUE; + gboolean hide_if_empty = TRUE; g_return_if_fail (GTK_IS_MENU_ITEM (proxy)); g_return_if_fail (action == NULL || GTK_IS_ACTION (action)); @@ -645,8 +646,12 @@ _gtk_action_sync_menu_visible (GtkAction *action, if (action == NULL) action = g_object_get_qdata (G_OBJECT (proxy), quark_gtk_action_proxy); - visible = gtk_action_is_visible (action); - hide_if_empty = action->private_data->hide_if_empty; + if (action) + { + /* a GtkMenu for a doesn't have to have an action */ + visible = gtk_action_is_visible (action); + hide_if_empty = action->private_data->hide_if_empty; + } if (visible && !(empty && hide_if_empty)) gtk_widget_show (proxy);