From 983f83536606972bd90e9f95377a8d1ced282720 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 26 Aug 2009 17:27:39 -0500 Subject: Making ourselves a variable in the middle of everything. --- src/indicator-messages.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/indicator-messages.c') diff --git a/src/indicator-messages.c b/src/indicator-messages.c index 0d2854b..80ab535 100644 --- a/src/indicator-messages.c +++ b/src/indicator-messages.c @@ -175,6 +175,8 @@ get_menu (void) g_idle_add(setup_icon_proxy, NULL); - return GTK_MENU(dbusmenu_gtkmenu_new(INDICATOR_MESSAGES_DBUS_NAME, INDICATOR_MESSAGES_DBUS_OBJECT)); + DbusmenuGtkMenu * menu = dbusmenu_gtkmenu_new(INDICATOR_MESSAGES_DBUS_NAME, INDICATOR_MESSAGES_DBUS_OBJECT); + + return GTK_MENU(menu); } -- cgit v1.2.3 From bb8dfce7d1a137eeff3792862b3f9a27416f3836 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 26 Aug 2009 17:29:53 -0500 Subject: Injecting in a type for the launchers. --- src/indicator-messages.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/indicator-messages.c') diff --git a/src/indicator-messages.c b/src/indicator-messages.c index 80ab535..2aec8e9 100644 --- a/src/indicator-messages.c +++ b/src/indicator-messages.c @@ -136,6 +136,13 @@ setup_icon_proxy (gpointer userdata) return FALSE; } +static gboolean +new_launcher_item (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client) +{ + + return TRUE; +} + GtkLabel * get_label (void) { @@ -176,6 +183,9 @@ get_menu (void) g_idle_add(setup_icon_proxy, NULL); DbusmenuGtkMenu * menu = dbusmenu_gtkmenu_new(INDICATOR_MESSAGES_DBUS_NAME, INDICATOR_MESSAGES_DBUS_OBJECT); + DbusmenuGtkClient * client = dbusmenu_gtkmenu_get_client(menu); + + dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(client), "launcher-item", new_launcher_item); return GTK_MENU(menu); } -- cgit v1.2.3 From 96d5cadae1492a0d4db6e38f606be309e76ab0aa Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 26 Aug 2009 20:06:09 -0500 Subject: Pulling the type and the properties into the shared DBus header. --- src/indicator-messages.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/indicator-messages.c') diff --git a/src/indicator-messages.c b/src/indicator-messages.c index 2aec8e9..8762593 100644 --- a/src/indicator-messages.c +++ b/src/indicator-messages.c @@ -185,7 +185,7 @@ get_menu (void) DbusmenuGtkMenu * menu = dbusmenu_gtkmenu_new(INDICATOR_MESSAGES_DBUS_NAME, INDICATOR_MESSAGES_DBUS_OBJECT); DbusmenuGtkClient * client = dbusmenu_gtkmenu_get_client(menu); - dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(client), "launcher-item", new_launcher_item); + dbusmenu_client_add_type_handler(DBUSMENU_CLIENT(client), LAUNCHER_MENUITEM_TYPE, new_launcher_item); return GTK_MENU(menu); } -- cgit v1.2.3 From bab6bd250e02bb8a139ea4ad36fdee2b7b250544 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Wed, 26 Aug 2009 20:20:02 -0500 Subject: Filling in the new launcher menu item --- src/indicator-messages.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'src/indicator-messages.c') diff --git a/src/indicator-messages.c b/src/indicator-messages.c index 8762593..8838313 100644 --- a/src/indicator-messages.c +++ b/src/indicator-messages.c @@ -139,6 +139,22 @@ setup_icon_proxy (gpointer userdata) static gboolean new_launcher_item (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client) { + GtkMenuItem * gmi = GTK_MENU_ITEM(gtk_menu_item_new()); + + GtkWidget * vbox = gtk_vbox_new(TRUE, 2); + + GtkWidget * app_label = gtk_label_new(dbusmenu_menuitem_property_get(newitem, LAUNCHER_MENUITEM_PROP_APP_NAME)); + GtkWidget * dsc_label = gtk_label_new(dbusmenu_menuitem_property_get(newitem, LAUNCHER_MENUITEM_PROP_APP_DESC)); + + gtk_box_pack_start(GTK_BOX(vbox), app_label, FALSE, FALSE, 0); + gtk_widget_show(app_label); + gtk_box_pack_start(GTK_BOX(vbox), dsc_label, FALSE, FALSE, 0); + gtk_widget_show(dsc_label); + + gtk_container_add(GTK_CONTAINER(gmi), GTK_WIDGET(vbox)); + gtk_widget_show(GTK_WIDGET(vbox)); + + dbusmenu_gtkclient_newitem_base(DBUSMENU_GTKCLIENT(client), newitem, gmi, parent); return TRUE; } -- cgit v1.2.3