From aa7fa78a4d6d79621e7e6badc4ced41a57a35b52 Mon Sep 17 00:00:00 2001
From: Chris Hanson <org/chris-hanson/cph>
Date: Thu, 4 May 2000 18:52:52 +0000
Subject: [PATCH] Don't show "seen" in message flags.

---
 v7/src/imail/imail-core.scm |  3 ++-
 v7/src/imail/imail-top.scm  | 54 ++++++++++++++++---------------------
 2 files changed, 25 insertions(+), 32 deletions(-)

diff --git a/v7/src/imail/imail-core.scm b/v7/src/imail/imail-core.scm
index 1d4dc5604..a196f95bc 100644
--- a/v7/src/imail/imail-core.scm
+++ b/v7/src/imail/imail-core.scm
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: imail-core.scm,v 1.39 2000/05/04 17:40:01 cph Exp $
+;;; $Id: imail-core.scm,v 1.40 2000/05/04 18:52:52 cph Exp $
 ;;;
 ;;; Copyright (c) 1999-2000 Massachusetts Institute of Technology
 ;;;
@@ -484,6 +484,7 @@
 
 (define flags-member? (member-procedure string-ci=?))
 (define flags-add (add-member-procedure string-ci=?))
+(define flags-delete (delete-member-procedure list-deletor string-ci=?))
 (define flags-delete! (delete-member-procedure list-deletor! string-ci=?))
 
 (define (message-flag? object)
diff --git a/v7/src/imail/imail-top.scm b/v7/src/imail/imail-top.scm
index 94aadbdd4..3ecdc7392 100644
--- a/v7/src/imail/imail-top.scm
+++ b/v7/src/imail/imail-top.scm
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: imail-top.scm,v 1.31 2000/05/04 18:47:18 cph Exp $
+;;; $Id: imail-top.scm,v 1.32 2000/05/04 18:52:30 cph Exp $
 ;;;
 ;;; Copyright (c) 1999-2000 Massachusetts Institute of Technology
 ;;;
@@ -26,10 +26,6 @@
 ;;; * Try to leverage IMAP MIME parser by building compatible
 ;;;   interface for file-based folders.
 ;;;
-;;; * Hook in code to automatically re-open IMAP connections.
-;;;
-;;; * Mark messages as "seen", etc.
-;;;
 ;;; * Build generic message cache?  Need to figure out when cached
 ;;;   info can be deleted.
 
@@ -292,20 +288,6 @@ DEL	Scroll to previous screen of this message.
 (define (imail-kill-buffer buffer)
   (imail-close-buffer-folder buffer))
 
-(define-command imail-quit
-  "Quit out of IMAIL."
-  ()
-  (lambda ()
-    ((ref-command imail-save-folder))
-    (imail-close-buffer-folder (selected-buffer))
-    ((ref-command bury-buffer))))
-
-(define-command imail-save-folder
-  "Save the currently selected IMAIL folder."
-  ()
-  (lambda ()
-    (save-folder (selected-folder))))
-
 (define (imail-close-buffer-folder buffer)
   (let ((folder (selected-folder #f buffer)))
     (if folder
@@ -488,19 +470,15 @@ With prefix argument N moves backward N messages with these flags."
   (let ((message (selected-message #f buffer)))
     (and message
 	 (let ((folder (message-folder message))
-	       (index (message-index message))
-	       (flags (message-flags message)))
+	       (index (message-index message)))
 	   (if (and folder index)
-	       (let ((line
-		      (string-append
-		       " "
-		       (number->string (+ 1 index))
-		       "/"
-		       (number->string (folder-length folder)))))
-		 (if (pair? flags)
-		     (string-append line ","
-				    (decorated-string-append "" "," "" flags))
-		     line))
+	       (string-append " "
+			      (number->string (+ 1 index))
+			      "/"
+			      (number->string (folder-length folder))
+			      (decorated-string-append
+			       "," "" ""
+			       (flags-delete "seen" (message-flags message))))
 	       " 0/0")))))
 
 (define (maybe-reformat-headers message buffer)
@@ -806,6 +784,20 @@ While composing the reply, use \\[mail-yank-original] to yank the
 
 ;;;; Miscellany
 
+(define-command imail-quit
+  "Quit out of IMAIL."
+  ()
+  (lambda ()
+    ((ref-command imail-save-folder))
+    (imail-close-buffer-folder (selected-buffer))
+    ((ref-command bury-buffer))))
+
+(define-command imail-save-folder
+  "Save the currently selected IMAIL folder."
+  ()
+  (lambda ()
+    (save-folder (selected-folder))))
+
 (define-command imail-toggle-header
   "Show full message headers if pruned headers currently shown, or vice versa."
   ()
-- 
2.25.1