]> git.0d.be Git - empathy.git/blobdiff - libempathy-gtk/empathy-contact-dialogs.c
Updated Basque language
[empathy.git] / libempathy-gtk / empathy-contact-dialogs.c
index 7de7931537778aaac75f348af4e1a98090495500..5c77a787e366a724ac1e9674ac0bfe34420c4e08 100644 (file)
@@ -27,8 +27,6 @@
 #include <gtk/gtk.h>
 #include <glib/gi18n-lib.h>
 
-#include <libmissioncontrol/mission-control.h>
-
 #include <libempathy/empathy-contact-manager.h>
 #include <libempathy/empathy-account-manager.h>
 #include <libempathy/empathy-contact-list.h>
@@ -190,9 +188,10 @@ empathy_contact_information_dialog_show (EmpathyContact *contact,
 
        /* Contact info widget */
        contact_widget = empathy_contact_widget_new (contact,
+               EMPATHY_CONTACT_WIDGET_SHOW_LOCATION |
                EMPATHY_CONTACT_WIDGET_EDIT_NONE);
        gtk_container_set_border_width (GTK_CONTAINER (contact_widget), 8);
-       gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox),
+       gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))),
                            contact_widget,
                            TRUE, TRUE, 0);
        gtk_widget_show (contact_widget);
@@ -251,7 +250,7 @@ empathy_contact_edit_dialog_show (EmpathyContact *contact,
                EMPATHY_CONTACT_WIDGET_EDIT_ALIAS |
                EMPATHY_CONTACT_WIDGET_EDIT_GROUPS);
        gtk_container_set_border_width (GTK_CONTAINER (contact_widget), 8);
-       gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox),
+       gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))),
                            contact_widget,
                            TRUE, TRUE, 0);
        gtk_widget_show (contact_widget);
@@ -303,7 +302,7 @@ empathy_contact_personal_dialog_show (GtkWindow *parent)
                EMPATHY_CONTACT_WIDGET_EDIT_ALIAS |
                EMPATHY_CONTACT_WIDGET_EDIT_AVATAR);
        gtk_container_set_border_width (GTK_CONTAINER (contact_widget), 8);
-       gtk_box_pack_start (GTK_BOX (GTK_DIALOG (personal_dialog)->vbox),
+       gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (personal_dialog))),
                            contact_widget,
                            TRUE, TRUE, 0);
        empathy_contact_widget_set_account_filter (contact_widget,
@@ -327,26 +326,21 @@ empathy_contact_personal_dialog_show (GtkWindow *parent)
  */
 
 static gboolean
-can_add_contact_to_account (McAccount *account,
+can_add_contact_to_account (EmpathyAccount *account,
                            gpointer   user_data)
 {
-       EmpathyAccountManager *account_manager;
        EmpathyContactManager *contact_manager;
        TpConnection          *connection;
        gboolean               result;
 
-       account_manager = empathy_account_manager_dup_singleton ();
-       connection = empathy_account_manager_get_connection (account_manager,
-                                                            account);
-       if (!connection) {
-               g_object_unref (account_manager);
+       connection = empathy_account_get_connection (account);
+       if (connection == NULL)
                return FALSE;
-       }
 
        contact_manager = empathy_contact_manager_dup_singleton ();
-       result = empathy_contact_manager_can_add (contact_manager, connection);
+       result = empathy_contact_manager_get_flags_for_connection (
+               contact_manager, connection) & EMPATHY_CONTACT_LIST_CAN_ADD;
        g_object_unref (contact_manager);
-       g_object_unref (account_manager);
 
        return result;
 }
@@ -374,6 +368,13 @@ new_contact_response_cb (GtkDialog *dialog,
 
 void
 empathy_new_contact_dialog_show (GtkWindow *parent)
+{
+       empathy_new_contact_dialog_show_with_contact (parent, NULL);
+}
+
+void
+empathy_new_contact_dialog_show_with_contact (GtkWindow *parent,
+                                              EmpathyContact *contact)
 {
        GtkWidget *dialog;
        GtkWidget *button;
@@ -397,7 +398,7 @@ empathy_new_contact_dialog_show (GtkWindow *parent)
                                      button,
                                      GTK_RESPONSE_CANCEL);
        gtk_widget_show (button);
-       
+
        /* Add button */
        button = gtk_button_new_with_label (GTK_STOCK_ADD);
        gtk_button_set_use_stock (GTK_BUTTON (button), TRUE);
@@ -407,12 +408,12 @@ empathy_new_contact_dialog_show (GtkWindow *parent)
        gtk_widget_show (button);
 
        /* Contact info widget */
-       contact_widget = empathy_contact_widget_new (NULL,
+       contact_widget = empathy_contact_widget_new (contact,
                                                     EMPATHY_CONTACT_WIDGET_EDIT_ALIAS |
                                                     EMPATHY_CONTACT_WIDGET_EDIT_ACCOUNT |
                                                     EMPATHY_CONTACT_WIDGET_EDIT_ID |
                                                     EMPATHY_CONTACT_WIDGET_EDIT_GROUPS);
-       gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox),
+       gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (dialog))),
                            contact_widget,
                            TRUE, TRUE, 0);
        empathy_contact_widget_set_account_filter (contact_widget,