changeset 9925:4e7590473515

[gaim-migrate @ 10817] this addresses some sf bug, i forget the number. Now if you're going to alias or remove a buddy in a multi-buddy contact, you can tell what the hell you're doing committer: Tailor Script <tailor@pidgin.im>
author Nathan Walp <nwalp@pidgin.im>
date Wed, 01 Sep 2004 00:46:42 +0000
parents 872c4d8c1192
children b23e70bd1215
files src/gtkblist.c
diffstat 1 files changed, 18 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/gtkblist.c	Tue Aug 31 20:10:21 2004 +0000
+++ b/src/gtkblist.c	Wed Sep 01 00:46:42 2004 +0000
@@ -1165,11 +1165,24 @@
 
 	gaim_separator(menu);
 
-	gaim_new_item_from_stock(menu, _("_Alias..."), GAIM_STOCK_ALIAS,
-			G_CALLBACK(gtk_blist_menu_alias_cb), buddy, 0, 0, NULL);
-	gaim_new_item_from_stock(menu, _("_Remove"), GTK_STOCK_REMOVE,
-			G_CALLBACK(gaim_gtk_blist_remove_cb), buddy,
-			0, 0, NULL);
+	if(((GaimBlistNode*)buddy)->parent->child->next) {
+		gaim_new_item_from_stock(menu, _("_Alias Buddy..."), GAIM_STOCK_ALIAS,
+				G_CALLBACK(gtk_blist_menu_alias_cb), buddy, 0, 0, NULL);
+		gaim_new_item_from_stock(menu, _("_Remove Buddy"), GTK_STOCK_REMOVE,
+				G_CALLBACK(gaim_gtk_blist_remove_cb), buddy, 0, 0, NULL);
+		gaim_new_item_from_stock(menu, _("Alias Contact..."), GAIM_STOCK_ALIAS,
+				G_CALLBACK(gtk_blist_menu_alias_cb),
+				gaim_buddy_get_contact(buddy), 0, 0, NULL);
+		gaim_new_item_from_stock(menu, _("Remove Contact"), GTK_STOCK_REMOVE,
+				G_CALLBACK(gaim_gtk_blist_remove_cb),
+				gaim_buddy_get_contact(buddy), 0, 0, NULL);
+	} else {
+		gaim_new_item_from_stock(menu, _("_Alias..."), GAIM_STOCK_ALIAS,
+				G_CALLBACK(gtk_blist_menu_alias_cb), buddy, 0, 0, NULL);
+		gaim_new_item_from_stock(menu, _("_Remove"), GTK_STOCK_REMOVE,
+				G_CALLBACK(gaim_gtk_blist_remove_cb), buddy,
+				0, 0, NULL);
+	}
 }
 
 static gboolean