From 7817f0b39d43f6b2b2bf307c2e20c2be57c2c792 Mon Sep 17 00:00:00 2001 From: Xavier Claessens Date: Sat, 28 Jul 2007 21:12:28 +0000 Subject: Try to guess the server from the jid only if we are using the jabber 2007-07-28 Xavier Claessens * libempathy-gtk/empathy-account-widget-jabber.c: Try to guess the server from the jid only if we are using the jabber profile. When we guessed a server don't forget to set the "server" McAccount param, setting the entry's text is not enough. svn path=/trunk/; revision=209 --- ChangeLog | 7 +++++++ libempathy-gtk/empathy-account-widget-jabber.c | 27 ++++++++++++++++++-------- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index cf3e7968f..0d84683d9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2007-07-28 Xavier Claessens + + * libempathy-gtk/empathy-account-widget-jabber.c: Try to guess the + server from the jid only if we are using the jabber profile. When we + guessed a server don't forget to set the "server" McAccount param, + setting the entry's text is not enough. + 2007-07-28 Xavier Claessens * libempathy-gtk/empathy-profile-chooser.c: Improve the sort function diff --git a/libempathy-gtk/empathy-account-widget-jabber.c b/libempathy-gtk/empathy-account-widget-jabber.c index a4db08fdf..947da4a0e 100644 --- a/libempathy-gtk/empathy-account-widget-jabber.c +++ b/libempathy-gtk/empathy-account-widget-jabber.c @@ -102,15 +102,26 @@ account_widget_jabber_entry_focus_cb (GtkWidget *widget, mc_account_set_param_string (settings->account, param, str); if (widget == settings->entry_id) { - /* Try to guess the server */ - gchar *server; - - server = strstr (str, "@"); - if (server != NULL) { - /* skip the leading @ */ - server++; - gtk_entry_set_text (GTK_ENTRY (settings->entry_server), server); + McProfile *profile; + const gchar *profile_name; + + /* Try to guess the server if we are using the vanilla + * jabber profile. We don't have to do that with + * gtalk profile. */ + profile = mc_account_get_profile (settings->account); + profile_name = mc_profile_get_unique_name (profile); + if (strcmp (profile_name, "jabber") == 0) { + gchar *server; + + server = strstr (str, "@"); + if (server != NULL) { + /* skip the leading @ */ + server++; + gtk_entry_set_text (GTK_ENTRY (settings->entry_server), server); + mc_account_set_param_string (settings->account, "server", server); + } } + g_object_unref (profile); } } -- cgit v1.2.3