diff options
author | Ted Gould <ted@canonical.com> | 2009-08-26 16:25:23 -0500 |
---|---|---|
committer | Ted Gould <ted@canonical.com> | 2009-08-26 16:25:23 -0500 |
commit | b9b632e3461f2e7104e6c61d68d239fa27e65b74 (patch) | |
tree | e2b823407fb83d151e64a78d501fc21c916e5506 /libdbusmenu-gtk/menu.c | |
parent | 5ccb09e592577e769efe92ef752ff655c4a218d7 (diff) | |
parent | a7a3cd7d3ec49a25febf58d63b704a4b0287ad8e (diff) | |
download | libdbusmenu-b9b632e3461f2e7104e6c61d68d239fa27e65b74.tar.gz libdbusmenu-b9b632e3461f2e7104e6c61d68d239fa27e65b74.tar.bz2 libdbusmenu-b9b632e3461f2e7104e6c61d68d239fa27e65b74.zip |
Processing children upon realization
Diffstat (limited to 'libdbusmenu-gtk/menu.c')
-rw-r--r-- | libdbusmenu-gtk/menu.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/libdbusmenu-gtk/menu.c b/libdbusmenu-gtk/menu.c index 6e78a04..b6f8061 100644 --- a/libdbusmenu-gtk/menu.c +++ b/libdbusmenu-gtk/menu.c @@ -64,6 +64,7 @@ static void set_property (GObject * obj, guint id, const GValue * value, GParamS static void get_property (GObject * obj, guint id, GValue * value, GParamSpec * pspec); /* Internal */ static void build_client (DbusmenuGtkMenu * self); +static void child_realized (DbusmenuMenuitem * child, gpointer userdata); /* GObject Stuff */ G_DEFINE_TYPE (DbusmenuGtkMenu, dbusmenu_gtkmenu, GTK_TYPE_MENU); @@ -188,9 +189,7 @@ static void root_child_added (DbusmenuMenuitem * root, DbusmenuMenuitem * child, guint position, DbusmenuGtkMenu * menu) { g_debug("Root new child"); - DbusmenuGtkMenuPrivate * priv = DBUSMENU_GTKMENU_GET_PRIVATE(menu); - gtk_menu_shell_insert(GTK_MENU_SHELL(menu), GTK_WIDGET(dbusmenu_gtkclient_menuitem_get(priv->client, child)), position); - gtk_widget_show(GTK_WIDGET(menu)); + g_signal_connect(G_OBJECT(child), DBUSMENU_MENUITEM_SIGNAL_REALIZED, G_CALLBACK(child_realized), menu); return; } |