2004-10-03 [colin] 0.9.12cvs119.3
authorColin Leroy <colin@colino.net>
Sun, 3 Oct 2004 10:37:49 +0000 (10:37 +0000)
committerColin Leroy <colin@colino.net>
Sun, 3 Oct 2004 10:37:49 +0000 (10:37 +0000)
* src/gtk/gtksctree.c
Lots of side effects. Put back as before 117.2.
* src/summaryview.c
Fix bug #602

ChangeLog-gtk2.claws
PATCHSETS
configure.ac
src/gtk/gtksctree.c
src/summaryview.c

index 58212884f0288182c83733d0055bad2ac22d0682..50d261326b1b68aef2debdd07fdd03951ab8ae3a 100644 (file)
@@ -1,3 +1,10 @@
+2004-10-03 [colin]     0.9.12cvs119.3
+
+       * src/gtk/gtksctree.c
+               Lots of side effects. Put back as before 117.2.
+       * src/summaryview.c
+               Fix bug #602
+
 2004-10-03 [colin]     0.9.12cvs119.2
 
        * src/gtk/gtksctree.c
index fab8d5d6637b59b53cffe0b7bdef8ce18844b6a7..5523c9d0f5d855b167129deeb0ffdffe444dc921 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.83.2.20 -r 1.83.2.21 src/mimeview.c; ) > 0.9.12cvs118.1.patchset
 ( cvs diff -u -r 1.274.2.20 -r 1.274.2.21 src/mainwindow.c; cvs diff -u -r 1.94.2.30 -r 1.94.2.31 src/messageview.c; cvs diff -u -r 1.103.2.9 -r 1.103.2.10 src/prefs_common.h; cvs diff -u -r 1.49.2.8 -r 1.49.2.9 src/procmime.c; cvs diff -u -r 1.17.2.3 -r 1.17.2.4 src/procmime.h; cvs diff -u -r 1.96.2.18 -r 1.96.2.19 src/textview.c; cvs diff -u -r 1.1.4.5 -r 1.1.4.6 src/gtk/gtksctree.c; ) > 0.9.12cvs119.1.patchset
 ( cvs diff -u -r 1.1.4.6 -r 1.1.4.7 src/gtk/gtksctree.c; ) > 0.9.12cvs119.2.patchset
+( cvs diff -u -r 1.1.4.7 -r 1.1.4.8 src/gtk/gtksctree.c; cvs diff -u -r 1.395.2.33 -r 1.395.2.34 src/summaryview.c; ) > 0.9.12cvs119.3.patchset
index 1984b5a7dd29b0a1b29d76306bf83dc2f5e67398..13f89d3b19d537cc4d6f9a9f90c088eae85846fe 100644 (file)
@@ -13,7 +13,7 @@ INTERFACE_AGE=0
 BINARY_AGE=0
 EXTRA_VERSION=119
 EXTRA_RELEASE=
-EXTRA_GTK2_VERSION=.2
+EXTRA_GTK2_VERSION=.3
 
 if test \( $EXTRA_VERSION -eq 0 \) -o \( "x$EXTRA_RELEASE" != "x" \); then
     VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION}
index 1acfc2f18e69bfcff0b83e5e386deedb366374df..d6b28e7062ce8b86eb5c0ad2606a6d2008ecfc48 100644 (file)
@@ -235,7 +235,11 @@ select_row (GtkSCTree *sctree, gint row, gint col, guint state)
 
        gtk_clist_freeze (GTK_CLIST (sctree));
 
-       if (!additive && GTK_CLIST(sctree)->selection)
+       GTK_CLIST(sctree)->focus_row = row;
+
+       GTK_CLIST_GET_CLASS(sctree)->refresh(GTK_CLIST(sctree));
+
+       if (!additive)
                gtk_clist_unselect_all (GTK_CLIST (sctree));
 
        if (!range) {
@@ -260,8 +264,6 @@ select_row (GtkSCTree *sctree, gint row, gint col, guint state)
        } else
                select_range (sctree, row);
        
-       GTK_CLIST_GET_CLASS(sctree)->refresh(GTK_CLIST(sctree));
-
        gtk_clist_thaw (GTK_CLIST (sctree));
 }
 
index c0e18b1c9ce00cdea4b858dbc90079e75a6c47b4..e5928fb0056540c3dbef3ff5a59e3bb7f70b30c0 100644 (file)
@@ -1241,9 +1241,16 @@ static void summary_set_menu_sensitive(SummaryView *summaryview)
 void summary_select_prev_unread(SummaryView *summaryview)
 {
        GtkCTreeNode *node;
+       gboolean skip_cur = FALSE;
+
+       if (summaryview->displayed 
+       &&  summaryview->selected == summaryview->displayed) {
+               debug_print("skipping current\n");
+               skip_cur = TRUE;
+       }
 
        node = summary_find_prev_flagged_msg
-               (summaryview, summaryview->selected, MSG_UNREAD, TRUE);
+               (summaryview, summaryview->selected, MSG_UNREAD, skip_cur);
 
        if (!node) {
                AlertValue val = 0;
@@ -1280,9 +1287,17 @@ void summary_select_next_unread(SummaryView *summaryview)
 {
        GtkCTreeNode *node = summaryview->selected;
        GtkCTree *ctree = GTK_CTREE(summaryview->ctree);
+       gboolean skip_cur = FALSE;
+       
+       if (summaryview->displayed 
+       &&  summaryview->selected == summaryview->displayed) {
+               debug_print("skipping cur\n");
+               skip_cur = TRUE;
+       }
+
 
        node = summary_find_next_flagged_msg
-               (summaryview, node, MSG_UNREAD, TRUE);
+               (summaryview, node, MSG_UNREAD, skip_cur);
        
        if (node)
                summary_select_node(summaryview, node, TRUE, FALSE);