| 687 { |
687 { |
| 688 char *notification; |
688 char *notification; |
| 689 PurpleAccount *account; |
689 PurpleAccount *account; |
| 690 PidginNotifyMailData *data = NULL, *data2; |
690 PidginNotifyMailData *data = NULL, *data2; |
| 691 gboolean new_data = FALSE; |
691 gboolean new_data = FALSE; |
| |
692 GtkTreeSelection *sel; |
| |
693 GtkTreeIter iter; |
| 692 |
694 |
| 693 /* Don't bother updating if there aren't new emails and we don't have any displayed currently */ |
695 /* Don't bother updating if there aren't new emails and we don't have any displayed currently */ |
| 694 if (count == 0 && mail_dialog == NULL) |
696 if (count == 0 && mail_dialog == NULL) |
| 695 return NULL; |
697 return NULL; |
| 696 |
698 |
| 771 */ |
773 */ |
| 772 pidgin_blist_set_headline(NULL, NULL, NULL, NULL, NULL); |
774 pidgin_blist_set_headline(NULL, NULL, NULL, NULL, NULL); |
| 773 return NULL; |
775 return NULL; |
| 774 } |
776 } |
| 775 } |
777 } |
| |
778 } |
| |
779 |
| |
780 /* Select first item if nothing selected */ |
| |
781 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(mail_dialog->treeview)); |
| |
782 if ((gtk_tree_selection_count_selected_rows(sel) < 1) |
| |
783 && gtk_tree_model_get_iter_first(GTK_TREE_MODEL(mail_dialog->treemodel), &iter)) { |
| |
784 gtk_tree_selection_select_iter(sel, &iter); |
| 776 } |
785 } |
| 777 |
786 |
| 778 if (!GTK_WIDGET_VISIBLE(mail_dialog->dialog)) { |
787 if (!GTK_WIDGET_VISIBLE(mail_dialog->dialog)) { |
| 779 GdkPixbuf *pixbuf = gtk_widget_render_icon(mail_dialog->dialog, PIDGIN_STOCK_DIALOG_MAIL, |
788 GdkPixbuf *pixbuf = gtk_widget_render_icon(mail_dialog->dialog, PIDGIN_STOCK_DIALOG_MAIL, |
| 780 gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL), NULL); |
789 gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL), NULL); |
| 1528 gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(spec_dialog->treeview), FALSE); |
1537 gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(spec_dialog->treeview), FALSE); |
| 1529 |
1538 |
| 1530 gtk_tree_view_set_search_column(GTK_TREE_VIEW(spec_dialog->treeview), PIDGIN_MAIL_TEXT); |
1539 gtk_tree_view_set_search_column(GTK_TREE_VIEW(spec_dialog->treeview), PIDGIN_MAIL_TEXT); |
| 1531 gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(spec_dialog->treeview), |
1540 gtk_tree_view_set_search_equal_func(GTK_TREE_VIEW(spec_dialog->treeview), |
| 1532 pidgin_tree_view_search_equal_func, NULL, NULL); |
1541 pidgin_tree_view_search_equal_func, NULL, NULL); |
| |
1542 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(spec_dialog->treeview)); |
| |
1543 gtk_tree_selection_set_mode(sel, GTK_SELECTION_BROWSE); |
| 1533 |
1544 |
| 1534 g_signal_connect(G_OBJECT(dialog), "response", |
1545 g_signal_connect(G_OBJECT(dialog), "response", |
| 1535 G_CALLBACK(email_response_cb), spec_dialog); |
1546 G_CALLBACK(email_response_cb), spec_dialog); |
| 1536 g_signal_connect(G_OBJECT(gtk_tree_view_get_selection(GTK_TREE_VIEW(spec_dialog->treeview))), |
1547 g_signal_connect(G_OBJECT(sel), "changed", |
| 1537 "changed", G_CALLBACK(selection_changed_cb), spec_dialog); |
1548 G_CALLBACK(selection_changed_cb), spec_dialog); |
| 1538 g_signal_connect(G_OBJECT(spec_dialog->treeview), "row-activated", G_CALLBACK(email_row_activated_cb), NULL); |
1549 g_signal_connect(G_OBJECT(spec_dialog->treeview), "row-activated", G_CALLBACK(email_row_activated_cb), NULL); |
| 1539 |
1550 |
| 1540 column = gtk_tree_view_column_new(); |
1551 column = gtk_tree_view_column_new(); |
| 1541 gtk_tree_view_column_set_resizable(column, TRUE); |
1552 gtk_tree_view_column_set_resizable(column, TRUE); |
| 1542 rend = gtk_cell_renderer_pixbuf_new(); |
1553 rend = gtk_cell_renderer_pixbuf_new(); |