talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit a397d77d1f75b2be97f946f28ffaf452643a2965
parent 3c75f0d70030390d7079a67943b9d11b17d02e33
Author: Colin Leroy <colin@colino.net>
Date:   Tue, 12 Feb 2008 17:18:30 +0000

2008-02-12 [colin]	3.3.0cvs9

	* src/folderview.c
		Fix crashy stuff when changing displayed
		columns

Diffstat:
MChangeLog | 6++++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/folderview.c | 12++++++++++++
4 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,9 @@ +2008-02-12 [colin] 3.3.0cvs9 + + * src/folderview.c + Fix crashy stuff when changing displayed + columns + 2008-02-12 [wwp] 3.3.0cvs8 * src/folder.h diff --git a/PATCHSETS b/PATCHSETS @@ -3222,3 +3222,4 @@ ( cvs diff -u -r 1.42.2.35 -r 1.42.2.36 po/fr.po; ) > 3.3.0cvs6.patchset ( cvs diff -u -r 1.382.2.436 -r 1.382.2.437 src/compose.c; cvs diff -u -r 1.8.2.25 -r 1.8.2.26 src/export.c; cvs diff -u -r 1.213.2.176 -r 1.213.2.177 src/folder.c; cvs diff -u -r 1.87.2.53 -r 1.87.2.54 src/folder.h; cvs diff -u -r 1.26.2.34 -r 1.26.2.35 src/foldersel.c; cvs diff -u -r 1.4.12.5 -r 1.4.12.6 src/foldersel.h; cvs diff -u -r 1.1.2.53 -r 1.1.2.54 src/imap_gtk.c; cvs diff -u -r 1.13.2.24 -r 1.13.2.25 src/import.c; cvs diff -u -r 1.274.2.232 -r 1.274.2.233 src/mainwindow.c; cvs diff -u -r 1.94.2.170 -r 1.94.2.171 src/messageview.c; cvs diff -u -r 1.2.2.29 -r 1.2.2.30 src/mh_gtk.c; cvs diff -u -r 1.105.2.123 -r 1.105.2.124 src/prefs_account.c; cvs diff -u -r 1.1.4.48 -r 1.1.4.49 src/prefs_filtering_action.c; cvs diff -u -r 1.395.2.354 -r 1.395.2.355 src/summaryview.c; cvs diff -u -r 1.1.2.29 -r 1.1.2.30 src/plugins/bogofilter/bogofilter_gtk.c; cvs diff -u -r 1.23.2.46 -r 1.23.2.47 src/plugins/spamassassin/spamassassin_gtk.c; ) > 3.3.0cvs7.patchset ( cvs diff -u -r 1.87.2.54 -r 1.87.2.55 src/folder.h; ) > 3.3.0cvs8.patchset +( cvs diff -u -r 1.207.2.195 -r 1.207.2.196 src/folderview.c; ) > 3.3.0cvs9.patchset diff --git a/configure.ac b/configure.ac @@ -11,7 +11,7 @@ MINOR_VERSION=3 MICRO_VERSION=0 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=8 +EXTRA_VERSION=9 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/folderview.c b/src/folderview.c @@ -605,11 +605,18 @@ void folderview_set_column_order(FolderView *folderview) { GtkWidget *ctree; FolderItem *item = folderview_get_selected_item(folderview); + FolderItem *sel_item = NULL, *op_item = NULL; GtkWidget *scrolledwin = folderview->scrolledwin; + if (folderview->selected) + sel_item = gtk_ctree_node_get_row_data(ctree, folderview->selected); + if (folderview->opened) + op_item = gtk_ctree_node_get_row_data(ctree, folderview->opened); + debug_print("recreating tree...\n"); gtk_widget_destroy(folderview->ctree); + folderview->ctree = ctree = folderview_ctree_create(folderview); gtk_scrolled_window_set_hadjustment(GTK_SCROLLED_WINDOW(scrolledwin), GTK_CLIST(ctree)->hadjustment); @@ -617,6 +624,11 @@ void folderview_set_column_order(FolderView *folderview) GTK_CLIST(ctree)->vadjustment); gtk_widget_show(ctree); + if (sel_item) + folderview->selected = gtk_ctree_find_by_row_data(ctree, NULL, sel_item); + if (op_item) + folderview->opened = gtk_ctree_find_by_row_data(ctree, NULL, op_item); + folderview_set(folderview); folderview_column_set_titles(folderview);