Mercurial > pidgin
comparison src/multi.c @ 1817:b367beee6448
[gaim-migrate @ 1827]
reworked autorecon.c.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Sun, 06 May 2001 10:08:40 +0000 |
parents | 896432d66303 |
children | 75643b9f4261 |
comparison
equal
deleted
inserted
replaced
1816:aa2bb1bfbd4b | 1817:b367beee6448 |
---|---|
611 #endif /* USE_APPLET */ | 611 #endif /* USE_APPLET */ |
612 gtk_clist_set_text(GTK_CLIST(list), row, 1, "Attempting"); | 612 gtk_clist_set_text(GTK_CLIST(list), row, 1, "Attempting"); |
613 serv_login(u); | 613 serv_login(u); |
614 } | 614 } |
615 } else { | 615 } else { |
616 u->gc->wants_to_die = TRUE; | |
616 signoff(u->gc); | 617 signoff(u->gc); |
617 } | 618 } |
618 } | 619 } |
619 } | 620 } |
620 | 621 |
625 if (GTK_CLIST(list)->selection) | 626 if (GTK_CLIST(list)->selection) |
626 row = (int)GTK_CLIST(list)->selection->data; | 627 row = (int)GTK_CLIST(list)->selection->data; |
627 if (row != -1) { | 628 if (row != -1) { |
628 u = g_list_nth_data(aim_users, row); | 629 u = g_list_nth_data(aim_users, row); |
629 if (u) { | 630 if (u) { |
630 if (u->gc) | 631 if (u->gc) { |
632 u->gc->wants_to_die = TRUE; | |
631 signoff(u->gc); | 633 signoff(u->gc); |
634 } | |
632 aim_users = g_list_remove(aim_users, u); | 635 aim_users = g_list_remove(aim_users, u); |
633 save_prefs(); | 636 save_prefs(); |
634 } | 637 } |
635 gtk_clist_remove(GTK_CLIST(list), row); | 638 gtk_clist_remove(GTK_CLIST(list), row); |
636 } | 639 } |
782 } | 785 } |
783 } | 786 } |
784 | 787 |
785 static void cancel_signon(GtkWidget *button, struct gaim_connection *gc) | 788 static void cancel_signon(GtkWidget *button, struct gaim_connection *gc) |
786 { | 789 { |
790 gc->wants_to_die = TRUE; | |
787 signoff(gc); | 791 signoff(gc); |
788 } | 792 } |
789 | 793 |
790 static gint meter_destroy(GtkWidget *meter, GdkEvent *evt, struct gaim_connection *gc) | 794 static gint meter_destroy(GtkWidget *meter, GdkEvent *evt, struct gaim_connection *gc) |
791 { | 795 { |
841 gtk_progress_bar_update(GTK_PROGRESS_BAR(gc->progress), howfar / LOGIN_STEPS); | 845 gtk_progress_bar_update(GTK_PROGRESS_BAR(gc->progress), howfar / LOGIN_STEPS); |
842 gtk_statusbar_pop(GTK_STATUSBAR(gc->status), 1); | 846 gtk_statusbar_pop(GTK_STATUSBAR(gc->status), 1); |
843 gtk_statusbar_push(GTK_STATUSBAR(gc->status), 1, message); | 847 gtk_statusbar_push(GTK_STATUSBAR(gc->status), 1, message); |
844 } | 848 } |
845 | 849 |
850 static void set_kick_null(GtkObject *obj, struct aim_user *u) | |
851 { | |
852 u->kick_dlg = NULL; | |
853 } | |
854 | |
846 void hide_login_progress(struct gaim_connection *gc, char *why) | 855 void hide_login_progress(struct gaim_connection *gc, char *why) |
847 { | 856 { |
848 char buf[2048]; | 857 char buf[2048]; |
849 sprintf(buf, _("%s\n%s was unable to sign on: %s"), full_date(), gc->username, why); | 858 sprintf(buf, _("%s\n%s was unable to sign on: %s"), full_date(), gc->username, why); |
850 do_error_dialog(buf, _("Signon Error")); | 859 if (gc->user->kick_dlg) |
860 gtk_widget_destroy(gc->user->kick_dlg); | |
861 gc->user->kick_dlg = do_error_dialog(buf, _("Signon Error")); | |
862 gtk_signal_connect(GTK_OBJECT(gc->user->kick_dlg), "destroy", | |
863 GTK_SIGNAL_FUNC(set_kick_null), gc->user); | |
851 if (gc->meter) | 864 if (gc->meter) |
852 gtk_widget_destroy(gc->meter); | 865 gtk_widget_destroy(gc->meter); |
853 gc->meter = NULL; | 866 gc->meter = NULL; |
854 } | 867 } |
855 | 868 |