changeset 17218:5d95cdb20ec4

merge of '90b477e6a3033c1714b2edc257b23c40c97b145e' and '9ee11be925be26f61c2a1d24b166c02b6de8054a'
author Sean Egan <seanegan@gmail.com>
date Thu, 24 May 2007 19:06:01 +0000
parents f9c17090f347 (current diff) 3e611b1b379c (diff)
children 977b9adc2757
files
diffstat 1 files changed, 10 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/pidgin/gtkaccount.c	Thu May 24 18:55:19 2007 +0000
+++ b/pidgin/gtkaccount.c	Thu May 24 19:06:01 2007 +0000
@@ -689,7 +689,7 @@
 {
 	PurpleAccountOption *option;
 	PurpleAccount *account;
-	GtkWidget *frame, *vbox, *check, *entry, *combo;
+	GtkWidget *frame, *vbox, *check, *entry, *combo, *menu, *item;
 	const GList *list, *node;
 	gint i, idx, int_value;
 	GtkListStore *model;
@@ -699,7 +699,7 @@
 	GList *l;
 	char buf[1024];
 	char *title;
-	const char *str_value;
+	const char *str_value, *protocol;
 	gboolean bool_value;
 
 	if (dialog->protocol_frame != NULL) {
@@ -822,6 +822,14 @@
 						gtk_entry_set_invisible_char(GTK_ENTRY(entry), PIDGIN_INVISIBLE_CHAR);
 				}
 
+				/* Google Talk default domain hackery! */
+				menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->protocol_menu));
+				item = gtk_menu_get_active(GTK_MENU(menu));
+				protocol = g_object_get_data(G_OBJECT(item), "protocol");
+				if (str_value == NULL && !strcmp(protocol, "prpl-fake") &&
+					!strcmp(_("Connect server"),  purple_account_option_get_text(option)))
+					str_value = "talk.google.com";	
+		
 				if (str_value != NULL)
 					gtk_entry_set_text(GTK_ENTRY(entry), str_value);