diff libpurple/protocols/yahoo/libymsg.c @ 27615:b909c4a7bfc8

Allow changing contact details for folks in the buddylist.
author Sadrul Habib Chowdhury <imadil@gmail.com>
date Wed, 15 Jul 2009 03:17:54 +0000
parents fa827f6f990f
children 0d32c4c08deb
line wrap: on
line diff
--- a/libpurple/protocols/yahoo/libymsg.c	Tue Jul 14 21:08:56 2009 +0000
+++ b/libpurple/protocols/yahoo/libymsg.c	Wed Jul 15 03:17:54 2009 +0000
@@ -3871,6 +3871,16 @@
 	yahoo_doodle_initiate(gc, purple_buddy_get_name(b));
 }
 
+static void
+yahoo_userinfo_blist_node(PurpleBlistNode *node, gpointer data)
+{
+	PurpleBuddy *b = (PurpleBuddy *)node;
+	PurpleAccount *account = purple_buddy_get_account(b);
+	PurpleConnection *gc = purple_account_get_connection(account);
+
+	yahoo_set_userinfo_for_buddy(gc, b);
+}
+
 static GList *yahoo_buddy_menu(PurpleBuddy *buddy)
 {
 	GList *m = NULL;
@@ -3932,13 +3942,16 @@
 		act = purple_menu_action_new(_("Presence Settings"), NULL, NULL,
 		                           build_presence_submenu(f, gc));
 		m = g_list_append(m, act);
-	}
-
-	if (f) {
+
 		act = purple_menu_action_new(_("Start Doodling"),
 		                           PURPLE_CALLBACK(yahoo_doodle_blist_node),
 		                           NULL, NULL);
 		m = g_list_append(m, act);
+
+		act = purple_menu_action_new(_("Set User Info..."),
+		                           PURPLE_CALLBACK(yahoo_userinfo_blist_node),
+		                           NULL, NULL);
+		m = g_list_append(m, act);
 	}
 
 	return m;