[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] More flags




This is against the old version.  If you can't handle it, let me know.

1998-08-13  Jim Radford  <radford@robby.caltech.edu>

	* nnimap.el (nnimap-request-list): 
	* nnimap.el (nnimap-retrieve-groups): nnimap-request-list now default
 	to 'fast and lets nnimap-retrieve-groups return real data.

	* nnimap.el (nnimap-close-group):
	* nnimap.el (nnimap-request-update-info):
	* nnimap.el (nnimap-flag-permanent-p):
	* imap4rev1.el (imap-cb-response): permanentflags are now strings
 	so we don't have to convert every time.

--- simon/t/nnimap.el	Thu Aug 13 17:48:25 1998
+++ nnimap.el	Thu Aug 13 17:49:24 1998
@@ -284,7 +284,7 @@
 
 ;;; Interface functions, required backend functions
 
-;;; This seem to define the following:
+;;; This seems to define the following:
 ;;;  `nnimap-close-server'       `nnimap-server-opened'
 ;;;  `nnimap-open-server'        `nnimap-status-message'
 ;;; open-server -> nnoo-change-server
@@ -541,8 +544,8 @@
 	  (nnimap-send-command-wait 
                (concat "UID STORE 1:* -FLAGS.SILENT ("
                        (mapconcat 
-                        'symbol-name
-                        (remove '\\* (imap-folder-get 'permanentflags group))
+                        'identity
+                        (remove "\\*" (imap-folder-get 'permanentflags group))
                         " ")
                        ")")))
         (mapc
@@ -629,8 +632,10 @@
                                 (car pattern) " "
                                 (cdr pattern)))))
         (gnus-message 5 "Generating active list for %s" server)
-        (mapatoms (lambda (sym) (nnimap-request-list-mapper (symbol-name sym)))
-                  imap-data-folder)))
+        (let ((nnimap-group-list-speed 'fast))
+          (mapatoms (lambda (sym) (nnimap-request-list-mapper
+                                   (symbol-name sym)))
+                    imap-data-folder))))
     (setq nnimap-group-alist (nnmail-get-active))
     t))
   
@@ -651,7 +656,7 @@
       (with-current-buffer nnimap-server-buffer
       ;; Force the slow method for now since this will only be called
       ;; for subscribed groups. 
-      (let  (group (nnimap-group-list-speed 'slow)) ; ???
+      (let  (group)
         (gnus-message 5 "Generating active info for certain groups on %s"
                       server)
         (while (setq group (pop groups))
@@ -688,10 +693,9 @@
 (defun nnimap-flag-permanent-p (mark-string group)
   (or (member (cdr (assoc (car mark-string) 
                           nnimap-mark-to-flag-alist))
-              (mapcar 'symbol-name ; Yuck
-                      (imap-folder-get 'permanentflags group)))
+              (imap-folder-get 'permanentflags group))
       (and (string-match "gnus-" (cdr mark-string))
-           (memq '\\* (imap-folder-get 'permanentflags group)))))
+           (member "\\*" (imap-folder-get 'permanentflags group)))))
   
 ;;; I really think this should update the active-info too???
 (deffoo nnimap-request-update-info (group info &optional server)
--- simon/t/imap4rev1.el	Wed Aug 12 21:32:47 1998
+++ imap4rev1.el	Thu Aug 13 17:40:52 1998
@@ -786,7 +786,7 @@
             ((equal var 'APPENDUID)
              (imap-folder-set 'appenduid (cons value (caddr code))))
             ((equal var 'PERMANENTFLAGS)
-             (imap-folder-set 'permanentflags value))
+             (imap-folder-set 'permanentflags (mapcar 'symbol-name value)))
             ((equal var 'READ-ONLY)
              (imap-folder-set 'writable nil))
             ((equal var 'READ-WRITE)