| 2954 return &handle; |
2954 return &handle; |
| 2955 } |
2955 } |
| 2956 |
2956 |
| 2957 static void connection_signed_off_cb(PurpleConnection *gc) |
2957 static void connection_signed_off_cb(PurpleConnection *gc) |
| 2958 { |
2958 { |
| 2959 GSList *list; |
2959 GSList *list, *l_next; |
| 2960 for (list = minidialogs; list; list = list->next) { |
2960 for (list = minidialogs; list; list = l_next) { |
| |
2961 l_next = list->next; |
| 2961 if (g_object_get_data(G_OBJECT(list->data), "gc") == gc) { |
2962 if (g_object_get_data(G_OBJECT(list->data), "gc") == gc) { |
| 2962 gtk_widget_destroy(GTK_WIDGET(list->data)); |
2963 gtk_widget_destroy(GTK_WIDGET(list->data)); |
| 2963 } |
2964 } |
| 2964 } |
2965 } |
| 2965 } |
2966 } |
| 3021 g_signal_connect(G_OBJECT(mini_dialog), "destroy", |
3022 g_signal_connect(G_OBJECT(mini_dialog), "destroy", |
| 3022 G_CALLBACK(alert_killed_cb), NULL); |
3023 G_CALLBACK(alert_killed_cb), NULL); |
| 3023 |
3024 |
| 3024 va_start(args, user_data); |
3025 va_start(args, user_data); |
| 3025 while ((button_text = va_arg(args, char*))) { |
3026 while ((button_text = va_arg(args, char*))) { |
| |
3027 struct _old_button_clicked_cb_data *data = NULL; |
| |
3028 PidginMiniDialogCallback wrapper_cb = NULL; |
| 3026 PidginUtilMiniDialogCallback callback = |
3029 PidginUtilMiniDialogCallback callback = |
| 3027 va_arg(args, PidginUtilMiniDialogCallback); |
3030 va_arg(args, PidginUtilMiniDialogCallback); |
| 3028 struct _old_button_clicked_cb_data *data = |
3031 |
| 3029 g_new0(struct _old_button_clicked_cb_data, 1); |
3032 if (callback != NULL) { |
| 3030 data->cb = callback; |
3033 data = g_new0(struct _old_button_clicked_cb_data, 1); |
| 3031 data->data = user_data; |
3034 data->cb = callback; |
| |
3035 data->data = user_data; |
| |
3036 wrapper_cb = old_mini_dialog_button_clicked_cb; |
| |
3037 } |
| 3032 pidgin_mini_dialog_add_button(mini_dialog, button_text, |
3038 pidgin_mini_dialog_add_button(mini_dialog, button_text, |
| 3033 old_mini_dialog_button_clicked_cb, data); |
3039 wrapper_cb, data); |
| 3034 cb_datas = g_list_append(cb_datas, data); |
3040 cb_datas = g_list_append(cb_datas, data); |
| 3035 } |
3041 } |
| 3036 va_end(args); |
3042 va_end(args); |
| 3037 |
3043 |
| 3038 g_signal_connect(G_OBJECT(mini_dialog), "destroy", |
3044 g_signal_connect(G_OBJECT(mini_dialog), "destroy", |