From 2ff78f4502e34fdaef08f0be11b020a8f564eabe Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 1 Oct 2009 14:15:52 -0500 Subject: Adding a couple massive debugging messages. --- libdbusmenu-gtk/client.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'libdbusmenu-gtk/client.c') diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c index 901d739..35f5e61 100644 --- a/libdbusmenu-gtk/client.c +++ b/libdbusmenu-gtk/client.c @@ -195,6 +195,10 @@ new_menuitem (DbusmenuClient * client, DbusmenuMenuitem * mi, gpointer userdata) void dbusmenu_gtkclient_newitem_base (DbusmenuGtkClient * client, DbusmenuMenuitem * item, GtkMenuItem * gmi, DbusmenuMenuitem * parent) { + #ifdef MASSIVEDEBUGGING + g_debug("GTK Client new item base for %d", dbusmenu_menuitem_get_id(item)); + #endif + /* Attach these two */ g_object_set_data(G_OBJECT(item), data_menuitem, gmi); @@ -222,6 +226,10 @@ dbusmenu_gtkclient_newitem_base (DbusmenuGtkClient * client, DbusmenuMenuitem * static void new_child (DbusmenuMenuitem * mi, DbusmenuMenuitem * child, guint position, DbusmenuGtkClient * gtkclient) { + #ifdef MASSIVEDEBUGGING + g_debug("GTK Client new child for %d on %d at %d", dbusmenu_menuitem_get_id(mi), dbusmenu_menuitem_get_id(child), position); + #endif + if (dbusmenu_menuitem_get_root(mi)) { return; } gpointer ann_menu = g_object_get_data(G_OBJECT(mi), data_menu); -- cgit v1.2.3 From ade76d21e26083ebd287564c321ee3a7600d1fe4 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 1 Oct 2009 15:34:26 -0500 Subject: Leaving abstract the data as long as possible to avoid GTK cast warnings. --- libdbusmenu-gtk/client.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'libdbusmenu-gtk/client.c') diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c index 35f5e61..21da38e 100644 --- a/libdbusmenu-gtk/client.c +++ b/libdbusmenu-gtk/client.c @@ -324,14 +324,13 @@ dbusmenu_gtkclient_menuitem_get (DbusmenuGtkClient * client, DbusmenuMenuitem * g_return_val_if_fail(DBUSMENU_IS_GTKCLIENT(client), NULL); g_return_val_if_fail(DBUSMENU_IS_MENUITEM(item), NULL); - GtkMenuItem * mi = GTK_MENU_ITEM(g_object_get_data(G_OBJECT(item), data_menuitem)); - if (mi == NULL) { - // new_menuitem(DBUSMENU_CLIENT(client), item, NULL); + gpointer data = g_object_get_data(G_OBJECT(item), data_menuitem); + if (data == NULL) { g_warning("GTK not updated"); - mi = GTK_MENU_ITEM(g_object_get_data(G_OBJECT(item), data_menuitem)); + return NULL; } - return mi; + return GTK_MENU_ITEM(data); } /* The base type handler that builds a plain ol' -- cgit v1.2.3 From 5234d6f550335d177038062a9b0c361fa3043a0c Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 1 Oct 2009 16:51:18 -0500 Subject: Reffing the GTK menu item --- libdbusmenu-gtk/client.c | 1 + 1 file changed, 1 insertion(+) (limited to 'libdbusmenu-gtk/client.c') diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c index 21da38e..18dcea8 100644 --- a/libdbusmenu-gtk/client.c +++ b/libdbusmenu-gtk/client.c @@ -201,6 +201,7 @@ dbusmenu_gtkclient_newitem_base (DbusmenuGtkClient * client, DbusmenuMenuitem * /* Attach these two */ g_object_set_data(G_OBJECT(item), data_menuitem, gmi); + g_object_ref(G_OBJECT(gmi)); /* DbusmenuMenuitem signals */ g_signal_connect(G_OBJECT(item), DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED, G_CALLBACK(menu_prop_change_cb), gmi); -- cgit v1.2.3 From e37049853e8a01f93cbcb05ccc6679a0a3d23308 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Fri, 2 Oct 2009 14:58:59 -0500 Subject: Printing when the GTK Menu item gets destroyed. --- libdbusmenu-gtk/client.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'libdbusmenu-gtk/client.c') diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c index 18dcea8..377f9bc 100644 --- a/libdbusmenu-gtk/client.c +++ b/libdbusmenu-gtk/client.c @@ -176,6 +176,15 @@ new_menuitem (DbusmenuClient * client, DbusmenuMenuitem * mi, gpointer userdata) return; } +#ifdef MASSIVEDEBUGGING +static void +destroy_gmi (GtkMenuItem * gmi, DbusmenuMenuitem * mi) +{ + g_debug("Destorying GTK Menuitem for %d", dbusmenu_menuitem_get_id(mi)); + return; +} +#endif + /** dbusmenu_gtkclient_newitem_base: @client: The client handling everything on this connection @@ -202,6 +211,9 @@ dbusmenu_gtkclient_newitem_base (DbusmenuGtkClient * client, DbusmenuMenuitem * /* Attach these two */ g_object_set_data(G_OBJECT(item), data_menuitem, gmi); g_object_ref(G_OBJECT(gmi)); + #ifdef MASSIVEDEBUGGING + g_signal_connect(G_OBJECT(gmi), "destroy", G_CALLBACK(destroy_gmi), item); + #endif /* DbusmenuMenuitem signals */ g_signal_connect(G_OBJECT(item), DBUSMENU_MENUITEM_SIGNAL_PROPERTY_CHANGED, G_CALLBACK(menu_prop_change_cb), gmi); -- cgit v1.2.3 From a1b3e6d9400764292ea6f4252e4fa93f98da3c5a Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Fri, 2 Oct 2009 15:01:16 -0500 Subject: Putting the menuitem dying in massive debugging info. --- libdbusmenu-gtk/client.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'libdbusmenu-gtk/client.c') diff --git a/libdbusmenu-gtk/client.c b/libdbusmenu-gtk/client.c index 377f9bc..8489424 100644 --- a/libdbusmenu-gtk/client.c +++ b/libdbusmenu-gtk/client.c @@ -159,7 +159,9 @@ menu_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, gchar * value, GtkMenu static void destoryed_dbusmenuitem_cb (gpointer udata, GObject * dbusmenuitem) { - /* g_debug("DbusmenuMenuitem was destroyed"); */ + #ifdef MASSIVEDEBUGGING + g_debug("DbusmenuMenuitem was destroyed"); + #endif gtk_widget_destroy(GTK_WIDGET(udata)); return; } -- cgit v1.2.3