From 336210d368813691731b96971407939f7d1319c1 Mon Sep 17 00:00:00 2001 From: Philip Withnall Date: Thu, 2 Sep 2010 14:31:28 +0100 Subject: =?UTF-8?q?Remove=20the=20=E2=80=9CAdd=20Contact=E2=80=A6=E2=80=9D?= =?UTF-8?q?=20menu=20entry=20from=20EmpathyIndividualMenu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's never used, but is a CPU drain and can sometimes appear uninvited. --- libempathy-gtk/empathy-individual-menu.c | 91 -------------------------------- 1 file changed, 91 deletions(-) (limited to 'libempathy-gtk/empathy-individual-menu.c') diff --git a/libempathy-gtk/empathy-individual-menu.c b/libempathy-gtk/empathy-individual-menu.c index b0d734e58..6f3f8ce29 100644 --- a/libempathy-gtk/empathy-individual-menu.c +++ b/libempathy-gtk/empathy-individual-menu.c @@ -33,7 +33,6 @@ #include #include -#include #include #include #include @@ -43,7 +42,6 @@ #include "empathy-log-window.h" #include "empathy-contact-dialogs.h" #include "empathy-gtk-enum-types.h" -#include "empathy-individual-dialogs.h" #include "empathy-individual-edit-dialog.h" #include "empathy-individual-information-dialog.h" #include "empathy-ui-utils.h" @@ -228,14 +226,6 @@ constructed (GObject *object) individual = priv->individual; features = priv->features; - /* Add Contact */ - item = empathy_individual_add_menu_item_new (individual); - if (item) - { - gtk_menu_shell_append (shell, item); - gtk_widget_show (item); - } - /* Chat */ if (features & EMPATHY_INDIVIDUAL_FEATURE_CHAT) { @@ -451,87 +441,6 @@ empathy_individual_menu_new (FolksIndividual *individual, NULL); } -static void -empathy_individual_add_menu_item_activated (GtkMenuItem *item, - FolksIndividual *individual) -{ - GtkWidget *toplevel; - - toplevel = gtk_widget_get_toplevel (GTK_WIDGET (item)); - if (!gtk_widget_is_toplevel (toplevel) || !GTK_IS_WINDOW (toplevel)) - toplevel = NULL; - - empathy_new_individual_dialog_show_with_individual (GTK_WINDOW (toplevel), - individual); -} - -GtkWidget * -empathy_individual_add_menu_item_new (FolksIndividual *individual) -{ - GtkWidget *item; - GtkWidget *image; - EmpathyIndividualManager *manager = NULL; - EmpathyContact *contact = NULL; - TpConnection *connection; - GList *l, *members; - gboolean found = FALSE; - EmpathyIndividualManagerFlags flags; - - g_return_val_if_fail (FOLKS_IS_INDIVIDUAL (individual), NULL); - - if (!empathy_individual_manager_initialized ()) - { - item = NULL; - goto out; - } - - manager = empathy_individual_manager_dup_singleton (); - contact = empathy_contact_dup_from_folks_individual (individual); - connection = empathy_contact_get_connection (contact); - - flags = empathy_individual_manager_get_flags_for_connection (manager, - connection); - - if (!(flags & EMPATHY_INDIVIDUAL_MANAGER_CAN_ADD)) - { - item = NULL; - goto out; - } - - members = empathy_individual_manager_get_members ( - EMPATHY_INDIVIDUAL_MANAGER (manager)); - - for (l = members; l && !found; l = l->next) - { - if (!tp_strdiff (folks_individual_get_id (l->data), - folks_individual_get_id (individual))) - { - found = TRUE; - } - } - g_list_free (members); - - if (found) - { - item = NULL; - goto out; - } - - item = gtk_image_menu_item_new_with_mnemonic (_("_Add Contact…")); - image = gtk_image_new_from_icon_name (GTK_STOCK_ADD, GTK_ICON_SIZE_MENU); - gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (item), image); - - g_signal_connect (item, "activate", - G_CALLBACK (empathy_individual_add_menu_item_activated), - individual); - -out: - tp_clear_object (&contact); - tp_clear_object (&manager); - - return item; -} - typedef gboolean (*SensitivityPredicate) (EmpathyContact *contact); /* Like menu_item_set_first_contact(), but always operates upon the given -- cgit v1.2.3