Mercurial > pidgin.yaz
comparison pidgin/gtkaccount.c @ 17526:8bc2b7ec45c1
Make sure if some plugin used pidgin_protocol_option_menu_new, they continue
to work. Also, fix the google-talk selection.
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Sun, 27 May 2007 18:31:40 +0000 |
parents | 3e611b1b379c |
children | a50f0188896b |
comparison
equal
deleted
inserted
replaced
17525:be7e6375ce7e | 17526:8bc2b7ec45c1 |
---|---|
474 l != NULL && l2 != NULL; | 474 l != NULL && l2 != NULL; |
475 l = l->prev, l2 = l2->prev) { | 475 l = l->prev, l2 = l2->prev) { |
476 | 476 |
477 GtkWidget *entry = l->data; | 477 GtkWidget *entry = l->data; |
478 PurpleAccountUserSplit *split = l2->data; | 478 PurpleAccountUserSplit *split = l2->data; |
479 const char *value = NULL, *protocol = NULL; | 479 const char *value = NULL; |
480 char *c; | 480 char *c; |
481 | 481 |
482 if (dialog->account != NULL) { | 482 if (dialog->account != NULL) { |
483 c = strrchr(username, | 483 c = strrchr(username, |
484 purple_account_user_split_get_separator(split)); | 484 purple_account_user_split_get_separator(split)); |
494 value = purple_account_user_split_get_default_value(split); | 494 value = purple_account_user_split_get_default_value(split); |
495 | 495 |
496 /* Google Talk default domain hackery! */ | 496 /* Google Talk default domain hackery! */ |
497 menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->protocol_menu)); | 497 menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->protocol_menu)); |
498 item = gtk_menu_get_active(GTK_MENU(menu)); | 498 item = gtk_menu_get_active(GTK_MENU(menu)); |
499 protocol = g_object_get_data(G_OBJECT(item), "protocol"); | 499 if (value == NULL && g_object_get_data(G_OBJECT(item), "fake") && |
500 if (value == NULL && !strcmp(protocol, "prpl-fake") && | |
501 !strcmp(purple_account_user_split_get_text(split), _("Domain"))) | 500 !strcmp(purple_account_user_split_get_text(split), _("Domain"))) |
502 value = "gmail.com"; | 501 value = "gmail.com"; |
503 | 502 |
504 if (value != NULL) | 503 if (value != NULL) |
505 gtk_entry_set_text(GTK_ENTRY(entry), value); | 504 gtk_entry_set_text(GTK_ENTRY(entry), value); |
697 GtkCellRenderer *renderer; | 696 GtkCellRenderer *renderer; |
698 PurpleKeyValuePair *kvp; | 697 PurpleKeyValuePair *kvp; |
699 GList *l; | 698 GList *l; |
700 char buf[1024]; | 699 char buf[1024]; |
701 char *title; | 700 char *title; |
702 const char *str_value, *protocol; | 701 const char *str_value; |
703 gboolean bool_value; | 702 gboolean bool_value; |
704 | 703 |
705 if (dialog->protocol_frame != NULL) { | 704 if (dialog->protocol_frame != NULL) { |
706 gtk_widget_destroy(dialog->protocol_frame); | 705 gtk_widget_destroy(dialog->protocol_frame); |
707 dialog->protocol_frame = NULL; | 706 dialog->protocol_frame = NULL; |
823 } | 822 } |
824 | 823 |
825 /* Google Talk default domain hackery! */ | 824 /* Google Talk default domain hackery! */ |
826 menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->protocol_menu)); | 825 menu = gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->protocol_menu)); |
827 item = gtk_menu_get_active(GTK_MENU(menu)); | 826 item = gtk_menu_get_active(GTK_MENU(menu)); |
828 protocol = g_object_get_data(G_OBJECT(item), "protocol"); | 827 if (str_value == NULL && g_object_get_data(G_OBJECT(item), "fake") && |
829 if (str_value == NULL && !strcmp(protocol, "prpl-fake") && | |
830 !strcmp(_("Connect server"), purple_account_option_get_text(option))) | 828 !strcmp(_("Connect server"), purple_account_option_get_text(option))) |
831 str_value = "talk.google.com"; | 829 str_value = "talk.google.com"; |
832 | 830 |
833 if (str_value != NULL) | 831 if (str_value != NULL) |
834 gtk_entry_set_text(GTK_ENTRY(entry), str_value); | 832 gtk_entry_set_text(GTK_ENTRY(entry), str_value); |
1461 } | 1459 } |
1462 | 1460 |
1463 if ((dialog->plugin = purple_find_prpl(dialog->protocol_id)) != NULL) | 1461 if ((dialog->plugin = purple_find_prpl(dialog->protocol_id)) != NULL) |
1464 dialog->prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(dialog->plugin); | 1462 dialog->prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(dialog->plugin); |
1465 | 1463 |
1466 | |
1467 dialog->window = win = gtk_window_new(GTK_WINDOW_TOPLEVEL); | 1464 dialog->window = win = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
1468 gtk_window_set_role(GTK_WINDOW(win), "account"); | 1465 gtk_window_set_role(GTK_WINDOW(win), "account"); |
1469 | 1466 |
1470 if (type == PIDGIN_ADD_ACCOUNT_DIALOG) | 1467 if (type == PIDGIN_ADD_ACCOUNT_DIALOG) |
1471 gtk_window_set_title(GTK_WINDOW(win), _("Add Account")); | 1468 gtk_window_set_title(GTK_WINDOW(win), _("Add Account")); |