commit 06edcef25a101bd47b7958732561d4b1ebe17dfc
Author: Vitaly Minko <vitaly.minko@gmail.com>
Date:   Fri Oct 22 20:58:57 2010 +0400

    Disable meaningless popup menu items in the contact menu (#573283).

diff --git a/libempathy-gtk/empathy-contact-menu.c b/libempathy-gtk/empathy-contact-menu.c
index 921e8d7..b1c093e 100644
--- a/libempathy-gtk/empathy-contact-menu.c
+++ b/libempathy-gtk/empathy-contact-menu.c
@@ -231,6 +231,7 @@ empathy_contact_chat_menu_item_new (EmpathyContact *contact)
 	image = gtk_image_new_from_icon_name (EMPATHY_IMAGE_MESSAGE,
 					      GTK_ICON_SIZE_MENU);
 	gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image);
+	gtk_widget_set_sensitive (item, !empathy_contact_is_user(contact));
 	gtk_widget_show (image);
 
 	g_signal_connect (item, "activate",
@@ -261,7 +262,8 @@ empathy_contact_audio_call_menu_item_new (EmpathyContact *contact)
 	image = gtk_image_new_from_icon_name (EMPATHY_IMAGE_VOIP,
 					      GTK_ICON_SIZE_MENU);
 	gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image);
-	gtk_widget_set_sensitive (item, empathy_contact_can_voip_audio (contact));
+	gtk_widget_set_sensitive (item, empathy_contact_can_voip_audio (contact) &&
+					!empathy_contact_is_user(contact));
 	gtk_widget_show (image);
 
 	g_signal_connect (item, "activate",
@@ -291,7 +293,8 @@ empathy_contact_video_call_menu_item_new (EmpathyContact *contact)
 	image = gtk_image_new_from_icon_name (EMPATHY_IMAGE_VIDEO_CALL,
 					      GTK_ICON_SIZE_MENU);
 	gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image);
-	gtk_widget_set_sensitive (item, empathy_contact_can_voip_video (contact));
+	gtk_widget_set_sensitive (item, empathy_contact_can_voip_video (contact) &&
+					!empathy_contact_is_user(contact));
 	gtk_widget_show (image);
 
 	g_signal_connect (item, "activate",
@@ -352,7 +355,8 @@ empathy_contact_file_transfer_menu_item_new (EmpathyContact *contact)
 	item = gtk_image_menu_item_new_with_mnemonic (_("Send File"));
 	image = gtk_image_new_from_icon_name (EMPATHY_IMAGE_DOCUMENT_SEND,
 					      GTK_ICON_SIZE_MENU);
-	gtk_widget_set_sensitive (item, empathy_contact_can_send_files (contact));
+	gtk_widget_set_sensitive (item, empathy_contact_can_send_files (contact) &&
+					!empathy_contact_is_user (contact));
 	gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image);
 	gtk_widget_show (image);
 
@@ -576,6 +580,12 @@ empathy_contact_invite_menu_item_new (EmpathyContact *contact)
 					      GTK_ICON_SIZE_MENU);
 	gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image);
 
+	if (empathy_contact_is_user(contact)) {
+		gtk_widget_set_sensitive (item, FALSE);
+		gtk_widget_show (image);
+		return item;
+	}
+
 	mgr = empathy_chatroom_manager_dup_singleton (NULL);
 	rooms = empathy_chatroom_manager_get_chatrooms (mgr,
 		empathy_contact_get_account (contact));
