* gnus-sum.el (gnus-summary-exit): Bind gnus-group-is-exiting-p.
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Fri, 3 Jan 2003 23:24:22 +0000 (23:24 +0000)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Fri, 3 Jan 2003 23:24:22 +0000 (23:24 +0000)
(gnus-summary-read-group-1): Update group line.

* gnus-group.el (gnus-group-line-format): Add %*.
(gnus-group-line-format-alist): Ditto.
(gnus-group-insert-group-line): Set it.
(gnus-group-is-exiting-p): New variable.
(gnus-group-insert-group-line): Use it.

* pop3.el (pop3-retr): Wait 500 msecs.
(pop3-read-response): Ditto.

lisp/ChangeLog
lisp/gnus-async.el
lisp/gnus-group.el
lisp/gnus-sum.el
lisp/pop3.el

index a946a2a..f400ab2 100644 (file)
@@ -1,3 +1,14 @@
+2003-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * gnus-sum.el (gnus-summary-exit): Bind gnus-group-is-exiting-p. 
+       (gnus-summary-read-group-1): Update group line.
+
+       * gnus-group.el (gnus-group-line-format): Add %*.
+       (gnus-group-line-format-alist): Ditto.
+       (gnus-group-insert-group-line): Set it.
+       (gnus-group-is-exiting-p): New variable.
+       (gnus-group-insert-group-line): Use it.
+
 2003-01-03  Teodor Zlatanov  <tzz@beld.net>
 
        * spam.el (spam-enter-ham-BBDB, spam-BBDB-register-routine):
@@ -30,6 +41,9 @@
 
 2003-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
+       * pop3.el (pop3-retr): Wait 500 msecs.
+       (pop3-read-response): Ditto.
+
        * gnus-msg.el (gnus-setup-message): Get the evaliation order
        right. 
        (gnus-inews-make-draft): New function.
index e661658..56d8f67 100644 (file)
@@ -278,13 +278,14 @@ It should return non-nil if the article is to be prefetched."
            (incf tries)
            (when (nntp-accept-process-output proc 1)
              (setq tries 0))
-           (when (and (not nntp-have-messaged) (eq 3 tries))
+           (when (and (not nntp-have-messaged)
+                      (= tries 3))
              (gnus-message 5 "Waiting for async article...")
              (setq nntp-have-messaged t)))
        (quit
         ;; if the user interrupted on a slow/hung connection,
         ;; do something friendly.
-        (when (< 3 tries)
+        (when (> tries 3)
           (setq gnus-async-current-prefetch-article nil))
         (signal 'quit nil)))
       (when nntp-have-messaged
index d108847..b0dc10d 100644 (file)
@@ -143,7 +143,7 @@ list."
                         (function-item gnus-group-sort-by-rank)
                         (function :tag "other" nil))))
 
-(defcustom gnus-group-line-format "%M\%S\%p\%P\%5y: %(%g%)%l %O\n"
+(defcustom gnus-group-line-format "%M\%S\%p\%P\%5y:%B%(%g%)%l %O\n"
   "*Format of group lines.
 It works along the same lines as a normal formatting string,
 with some simple extensions.
@@ -166,6 +166,7 @@ with some simple extensions.
 %s    Select method (string)
 %o    Moderated group (char, \"m\")
 %p    Process mark (char)
+%B    Whether a summary buffer for the group is open (char, \"*\")
 %O    Moderated group (string, \"(m)\" or \"\")
 %P    Topic indentation (string)
 %m    Whether there is new(ish) mail in the group (char, \"%\")
@@ -442,6 +443,7 @@ simple manner.")
 
 ;;; Internal variables
 
+(defvar gnus-group-is-exiting-p nil)
 (defvar gnus-group-sort-alist-function 'gnus-group-sort-flat
   "Function for sorting the group buffer.")
 
@@ -486,6 +488,7 @@ simple manner.")
     (?n gnus-tmp-news-method ?s)
     (?P gnus-group-indentation ?s)
     (?E gnus-tmp-group-icon ?s)
+    (?B gnus-tmp-summary-live ?c)
     (?l gnus-tmp-grouplens ?s)
     (?z gnus-tmp-news-method-string ?s)
     (?m (gnus-group-new-mail gnus-tmp-group) ?c)
@@ -1359,6 +1362,11 @@ if it is a string, only list groups matching REGEXP."
                   (zerop number)
                   (cdr (assq 'tick gnus-tmp-marked)))
              ?* ? ))
+        (gnus-tmp-summary-live
+         (if (and (not gnus-group-is-exiting-p)
+                  (gnus-buffer-live-p (gnus-summary-buffer-name
+                                       gnus-tmp-group)))
+             ?* ? ))
         (gnus-tmp-process-marked
          (if (member gnus-tmp-group gnus-group-marked)
              gnus-process-mark ? ))
index 5017beb..e0fa25e 100644 (file)
@@ -3493,6 +3493,7 @@ If NO-DISPLAY, don't generate a summary buffer."
        ;; Mark this buffer as "prepared".
        (setq gnus-newsgroup-prepared t)
        (gnus-run-hooks 'gnus-summary-prepared-hook)
+       (gnus-group-update-group group)
        t)))))
 
 (defun gnus-summary-auto-select-subject ()
@@ -6308,6 +6309,7 @@ If FORCE (the prefix), also save the .newsrc file(s)."
   (gnus-async-halt-prefetch)
   (let* ((group gnus-newsgroup-name)
         (quit-config (gnus-group-quit-config gnus-newsgroup-name))
+        (gnus-group-is-exiting-p t)
         (mode major-mode)
         (group-point nil)
         (buf (current-buffer)))
index 184b891..9f78bcb 100644 (file)
@@ -174,7 +174,7 @@ Return the response string if optional second argument is non-nil."
       (set-buffer (process-buffer process))
       (goto-char pop3-read-point)
       (while (not (search-forward "\r\n" nil t))
-       (accept-process-output process 3)
+       (accept-process-output process 0 500)
        (goto-char pop3-read-point))
       (setq match-end (point))
       (goto-char pop3-read-point)
@@ -359,7 +359,7 @@ This function currently does nothing.")
     (save-excursion
       (set-buffer (process-buffer process))
       (while (not (re-search-forward "^\\.\r\n" nil t))
-       (accept-process-output process 3)
+       (accept-process-output process 0 500)
        ;; bill@att.com ... to save wear and tear on the heap
        ;; uncommented because the condensed version below is a problem for
        ;; some.