From 9df668778959216dcafdebfcf014ed62c1d2fc68 Mon Sep 17 00:00:00 2001 From: Lars Magne Ingebrigtsen Date: Mon, 17 Mar 2003 15:14:43 +0000 Subject: [PATCH] (gnus-summary-next-group): Semi-exit group first to that target group is computed correctly when articles are marked as read by Xref handling. --- lisp/ChangeLog | 4 ++++ lisp/gnus-sum.el | 23 +++++++++-------------- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d9927ad33..b75d7b388 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2003-03-17 Lars Magne Ingebrigtsen + * gnus-sum.el (gnus-summary-next-group): Semi-exit group first to + that target group is computed correctly when articles are marked + as read by Xref handling. + * mail-source.el (mail-source-fetch-imap): Pass buffer-name to imap-open. diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 7900b4898..596da9679 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -6708,6 +6708,11 @@ previous group instead." (let ((current-group gnus-newsgroup-name) (current-buffer (current-buffer)) entered) + ;; First we semi-exit this group to update Xrefs and all variables. + ;; We can't do a real exit, because the window conf must remain + ;; the same in case the user is prompted for info, and we don't + ;; want the window conf to change before that... + (gnus-summary-exit t) (while (not entered) ;; Then we find what group we are supposed to enter. (set-buffer gnus-group-buffer) @@ -6732,20 +6737,10 @@ previous group instead." (let ((unreads (gnus-group-group-unread))) (if (and (or (eq t unreads) (and unreads (not (zerop unreads)))) - (progn - ;; Now we semi-exit this group to update Xrefs - ;; and all variables. We can't do a real exit, - ;; because the window conf must remain the same - ;; in case the user is prompted for info, and we - ;; don't want the window conf to change before - ;; that... - (when (gnus-buffer-live-p current-buffer) - (set-buffer current-buffer) - (gnus-summary-exit t)) - (gnus-summary-read-group - target-group nil no-article - (and (buffer-name current-buffer) current-buffer) - nil backward))) + (gnus-summary-read-group + target-group nil no-article + (and (buffer-name current-buffer) current-buffer) + nil backward)) (setq entered t) (setq current-group target-group target-group nil))))))) -- 2.25.1