]> git.0d.be Git - empathy.git/blobdiff - src/empathy-account-assistant.c
Move should_create_salut_account to local-xmpp-assistant-widget
[empathy.git] / src / empathy-account-assistant.c
index 926f6e09ac6fde2036144b5d3a58bbc79f700d65..00add5ed18e1d82d93781611dacfba848ddb99d8 100644 (file)
@@ -35,6 +35,7 @@
 
 #include <libempathy-gtk/empathy-account-widget.h>
 #include <libempathy-gtk/empathy-protocol-chooser.h>
+#include <libempathy-gtk/empathy-local-xmpp-assistant-widget.h>
 #include <libempathy-gtk/empathy-ui-utils.h>
 
 #define DEBUG_FLAG EMPATHY_DEBUG_ACCOUNT
@@ -119,11 +120,11 @@ build_error_vbox (const gchar *primary_message,
   GtkWidget *main_vbox, *w, *hbox;
   PangoAttrList *list;
 
-  main_vbox = gtk_vbox_new (FALSE, 12);
+  main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
   gtk_container_set_border_width (GTK_CONTAINER (main_vbox), 12);
   gtk_widget_show (main_vbox);
 
-  hbox = gtk_hbox_new (FALSE, 12);
+  hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
   gtk_box_pack_start (GTK_BOX (main_vbox), hbox, FALSE, FALSE, 0);
   gtk_widget_show (hbox);
 
@@ -319,7 +320,7 @@ account_assistant_apply_account_cb (GObject *source,
   EmpathyAccountSettings *settings = EMPATHY_ACCOUNT_SETTINGS (source);
   TpAccount *account;
 
-  empathy_account_settings_apply_finish (settings, result, &error);
+  empathy_account_settings_apply_finish (settings, result, NULL, &error);
 
   priv->is_creating = FALSE;
 
@@ -407,6 +408,8 @@ account_assistant_protocol_changed_cb (GtkComboBox *chooser,
       gtk_widget_destroy (priv->current_account_widget);
     }
 
+  empathy_account_widget_hide_buttons (widget_object);
+
   priv->current_account_widget = account_widget;
   priv->current_widget_object = widget_object;
 
@@ -600,11 +603,11 @@ account_assistant_build_introduction_page (EmpathyAccountAssistant *self)
   GdkPixbuf *pix;
   const gchar *str;
 
-  main_vbox = gtk_vbox_new (FALSE, 12);
+  main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
   gtk_widget_show (main_vbox);
   gtk_container_set_border_width (GTK_CONTAINER (main_vbox), 12);
 
-  hbox_1 = gtk_hbox_new (FALSE, 12);
+  hbox_1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
   gtk_box_pack_start (GTK_BOX (main_vbox), hbox_1, TRUE, TRUE, 0);
   gtk_widget_show (hbox_1);
 
@@ -638,13 +641,14 @@ account_assistant_build_introduction_page (EmpathyAccountAssistant *self)
   gtk_box_pack_start (GTK_BOX (main_vbox), w, TRUE, TRUE, 0);
   gtk_widget_show (w);
 
-  vbox_1 = gtk_vbox_new (TRUE, 0);
+  vbox_1 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
+  gtk_box_set_homogeneous (GTK_BOX (vbox_1), TRUE);
   gtk_container_add (GTK_CONTAINER (w), vbox_1);
   gtk_widget_show (vbox_1);
 
   if (empathy_import_accounts_to_import ())
     {
-      hbox_1 = gtk_hbox_new (FALSE, 0);
+      hbox_1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
       gtk_box_pack_start (GTK_BOX (vbox_1), hbox_1, TRUE, TRUE, 0);
       gtk_widget_show (hbox_1);
 
@@ -655,8 +659,8 @@ account_assistant_build_introduction_page (EmpathyAccountAssistant *self)
           GINT_TO_POINTER (RESPONSE_IMPORT));
       gtk_widget_show (radio);
 
-      w = gtk_combo_box_new_text ();
-      gtk_combo_box_append_text (GTK_COMBO_BOX (w), "Pidgin");
+      w = gtk_combo_box_text_new ();
+      gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (w), "Pidgin");
       gtk_box_pack_start (GTK_BOX (hbox_1), w, TRUE, TRUE, 0);
       gtk_combo_box_set_active (GTK_COMBO_BOX (w), 0);
       gtk_widget_show (w);
@@ -721,20 +725,21 @@ account_assistant_build_import_page (EmpathyAccountAssistant *self)
   EmpathyImportWidget *iw;
   EmpathyAccountAssistantPriv *priv = GET_PRIV (self);
 
-  main_vbox = gtk_vbox_new (FALSE, 12);
+  main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
   gtk_container_set_border_width (GTK_CONTAINER (main_vbox), 12);
   w = gtk_label_new (_("Select the accounts you want to import:"));
   gtk_misc_set_alignment (GTK_MISC (w), 0.0, 0.5);
   gtk_widget_show (w);
   gtk_box_pack_start (GTK_BOX (main_vbox), w, FALSE, FALSE, 6);
 
-  w = gtk_alignment_new (0, 0, 0, 0);
+  w = gtk_alignment_new (0, 0, 1, 1);
   gtk_alignment_set_padding (GTK_ALIGNMENT (w), 0, 0, 12, 0);
-  gtk_box_pack_start (GTK_BOX (main_vbox), w, FALSE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (main_vbox), w, TRUE, TRUE, 0);
   gtk_widget_show (w);
 
   /* NOTE: this is hardcoded as we support pidgin only */
-  iw = empathy_import_widget_new (EMPATHY_IMPORT_APPLICATION_PIDGIN);
+  iw = empathy_import_widget_new (EMPATHY_IMPORT_APPLICATION_PIDGIN,
+      priv->connection_mgrs);
   import = empathy_import_widget_get_widget (iw);
   gtk_container_add (GTK_CONTAINER (w), import);
   gtk_widget_show (import);
@@ -767,13 +772,16 @@ account_assistant_build_enter_or_create_page (EmpathyAccountAssistant *self)
   EmpathyAccountAssistantPriv *priv = GET_PRIV (self);
   GtkWidget *main_vbox, *w, *chooser, *vbox, *hbox, *radio;
 
-  main_vbox = gtk_vbox_new (FALSE, 12);
+  main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
   gtk_container_set_border_width (GTK_CONTAINER (main_vbox), 12);
   gtk_widget_show (main_vbox);
 
+  hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
+  gtk_box_pack_start (GTK_BOX (main_vbox), hbox, FALSE, FALSE, 0);
+  gtk_widget_show (hbox);
+
   w = gtk_label_new (NULL);
-  gtk_misc_set_alignment (GTK_MISC (w), 0, 0);
-  gtk_box_pack_start (GTK_BOX (main_vbox), w, FALSE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (hbox), w, FALSE, FALSE, 0);
   gtk_widget_show (w);
   priv->first_label = w;
 
@@ -783,11 +791,11 @@ account_assistant_build_enter_or_create_page (EmpathyAccountAssistant *self)
   gtk_widget_show (w);
 
   chooser = empathy_protocol_chooser_new ();
-  gtk_container_add (GTK_CONTAINER (w), chooser);
+  gtk_box_pack_start (GTK_BOX (hbox), chooser, FALSE, FALSE, 0);
   gtk_widget_show (chooser);
   priv->chooser = chooser;
 
-  vbox = gtk_vbox_new (FALSE, 6);
+  vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
   gtk_box_pack_end (GTK_BOX (main_vbox), vbox, FALSE, FALSE, 0);
   gtk_widget_show (vbox);
 
@@ -803,7 +811,7 @@ account_assistant_build_enter_or_create_page (EmpathyAccountAssistant *self)
   gtk_box_pack_start (GTK_BOX (vbox), w, FALSE, FALSE, 0);
   gtk_widget_show (w);
 
-  hbox = gtk_hbox_new (FALSE, 6);
+  hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
   gtk_container_add (GTK_CONTAINER (w), hbox);
   gtk_widget_show (hbox);
 
@@ -1069,11 +1077,11 @@ account_assistant_build_salut_page (EmpathyAccountAssistant *self)
   EmpathyAccountWidget *widget_object;
   gchar *markup;
 
-  main_vbox = gtk_vbox_new (FALSE, 12);
+  main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
   gtk_widget_show (main_vbox);
   gtk_container_set_border_width (GTK_CONTAINER (main_vbox), 12);
 
-  hbox_1 = gtk_hbox_new (FALSE, 12);
+  hbox_1 = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
   gtk_box_pack_start (GTK_BOX (main_vbox), hbox_1, TRUE, TRUE, 0);
   gtk_widget_show (hbox_1);
 
@@ -1100,8 +1108,8 @@ account_assistant_build_salut_page (EmpathyAccountAssistant *self)
 
   g_object_unref (pix);
 
-  w = gtk_check_button_new_with_label (
-      _("I don't want to enable this feature for now"));
+  w = gtk_check_button_new_with_mnemonic (
+      _("I do _not want to enable this feature for now"));
   gtk_box_pack_start (GTK_BOX (main_vbox), w, FALSE, FALSE, 0);
   g_signal_connect (w, "toggled",
       G_CALLBACK (create_salut_check_box_toggled_cb), self);
@@ -1115,6 +1123,8 @@ account_assistant_build_salut_page (EmpathyAccountAssistant *self)
   settings = create_salut_account_settings ();
 
   widget_object = empathy_account_widget_new_for_protocol (settings, TRUE);
+  empathy_account_widget_hide_buttons (widget_object);
+
   account_widget = empathy_account_widget_get_widget (widget_object);
 
   priv->salut_settings = settings;
@@ -1158,14 +1168,14 @@ account_mgr_prepare_cb (GObject *source_object,
   TpAccountManager *manager = TP_ACCOUNT_MANAGER (source_object);
   GError *error = NULL;
 
-  if (!tp_account_manager_prepare_finish (manager, result, &error))
+  if (!tp_proxy_prepare_finish (manager, result, &error))
     {
       DEBUG ("Failed to prepare account manager: %s", error->message);
       g_error_free (error);
       return;
     }
 
-  if (!should_create_salut_account (manager))
+  if (!empathy_local_xmpp_assistant_widget_should_create_account (manager))
     {
       DEBUG ("No need to create a Salut account");
       priv->display_salut_page = FALSE;
@@ -1274,7 +1284,7 @@ do_constructed (GObject *object)
   priv->salut_page = page;
   priv->display_salut_page = TRUE;
 
-  tp_account_manager_prepare_async (priv->account_mgr, NULL,
+  tp_proxy_prepare_async (priv->account_mgr, NULL,
       account_mgr_prepare_cb, self);
 
   gtk_window_set_resizable (GTK_WINDOW (self), FALSE);