From: teranisi Date: Thu, 19 Sep 2002 05:36:04 +0000 (+0000) Subject: * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'. X-Git-Tag: elmo-mark-restart~128 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=ae59e87f9883e19514c3ba8b7c11238015e42856;p=elisp%2Fwanderlust.git * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'. * elmo-filter.el (elmo-folder-unmark-read): Ditto. * elmo-map.el (elmo-folder-unmark-read): Ditto. * elmo-multi.el (elmo-folder-unmark-read): Ditto. * elmo-net.el (elmo-folder-unmark-read): Ditto. * elmo-pipe.el (elmo-folder-unmark-read): Ditto. --- diff --git a/elmo/ChangeLog b/elmo/ChangeLog index b2e7e95..cbe58ea 100644 --- a/elmo/ChangeLog +++ b/elmo/ChangeLog @@ -1,3 +1,17 @@ +2002-09-19 Yuuichi Teranishi + + * elmo.el (elmo-folder-unmark-read): Added argument `ignore-flag'. + + * elmo-filter.el (elmo-folder-unmark-read): Ditto. + + * elmo-map.el (elmo-folder-unmark-read): Ditto. + + * elmo-multi.el (elmo-folder-unmark-read): Ditto. + + * elmo-net.el (elmo-folder-unmark-read): Ditto. + + * elmo-pipe.el (elmo-folder-unmark-read): Ditto. + 2002-09-18 Yuuichi Teranishi * elmo-imap4.el (elmo-imap4-parse-status): Skip white spaces after diff --git a/elmo/elmo-filter.el b/elmo/elmo-filter.el index 3ce13bb..b8d29bb 100644 --- a/elmo/elmo-filter.el +++ b/elmo/elmo-filter.el @@ -272,9 +272,10 @@ (luna-define-method elmo-folder-unmark-read :around ((folder elmo-filter-folder) - numbers) + numbers + &optional ignore-flag) (elmo-folder-unmark-read (elmo-filter-folder-target-internal folder) - numbers) + numbers ignore-flag) (luna-call-next-method)) (luna-define-method elmo-folder-mark-as-important :around ((folder diff --git a/elmo/elmo-map.el b/elmo/elmo-map.el index fee7c2c..526e587 100644 --- a/elmo/elmo-map.el +++ b/elmo/elmo-map.el @@ -290,10 +290,12 @@ (elmo-map-folder-numbers-to-locations folder numbers))) (luna-define-method elmo-folder-unmark-read :before ((folder elmo-map-folder) - numbers) - (elmo-map-folder-unmark-read - folder - (elmo-map-folder-numbers-to-locations folder numbers))) + numbers + &optional ignore-flags) + (unless ignore-flags + (elmo-map-folder-unmark-read + folder + (elmo-map-folder-numbers-to-locations folder numbers)))) (luna-define-method elmo-folder-mark-as-read :before ((folder elmo-map-folder) diff --git a/elmo/elmo-multi.el b/elmo/elmo-multi.el index 3f3cb47..d756f3c 100644 --- a/elmo/elmo-multi.el +++ b/elmo/elmo-multi.el @@ -609,10 +609,12 @@ (luna-define-method elmo-folder-unmark-read :before ((folder elmo-multi-folder) - numbers) + numbers + &optional ignore-flag) (dolist (folder-numbers (elmo-multi-make-folder-numbers-list folder numbers)) (elmo-folder-unmark-read (car folder-numbers) - (cdr folder-numbers)))) + (cdr folder-numbers) + ignore-flag))) (luna-define-method elmo-folder-mark-as-answered :before ((folder elmo-multi-folder) diff --git a/elmo/elmo-net.el b/elmo/elmo-net.el index e7a9a4b..34e1143 100644 --- a/elmo/elmo-net.el +++ b/elmo/elmo-net.el @@ -476,8 +476,10 @@ Returned value is searched from `elmo-network-stream-type-alist'." numbers)))) (luna-define-method elmo-folder-unmark-read :before ((folder elmo-net-folder) - numbers) - (when (elmo-folder-use-flag-p folder) + numbers + &optional ignore-flag) + (when (and (elmo-folder-use-flag-p folder) + (not ignore-flag)) (if (elmo-folder-plugged-p folder) (elmo-folder-send folder 'elmo-folder-unmark-read-plugged numbers) (elmo-folder-send folder 'elmo-folder-unmark-read-unplugged numbers)))) diff --git a/elmo/elmo-pipe.el b/elmo/elmo-pipe.el index ea42578..3470d41 100644 --- a/elmo/elmo-pipe.el +++ b/elmo/elmo-pipe.el @@ -278,9 +278,10 @@ numbers ignore-flag)) (luna-define-method elmo-folder-unmark-read ((folder elmo-pipe-folder) - numbers) + numbers + &optional ignore-flag) (elmo-folder-unmark-read (elmo-pipe-folder-dst-internal folder) - numbers)) + numbers ignore-flag)) (luna-define-method elmo-folder-unmark-important ((folder elmo-pipe-folder) numbers) diff --git a/elmo/elmo.el b/elmo/elmo.el index 2047f62..117184c 100644 --- a/elmo/elmo.el +++ b/elmo/elmo.el @@ -344,16 +344,19 @@ NUMBERS is a list of message numbers to be processed.") FOLDER is the ELMO folder structure. NUMBERS is a list of message numbers to be processed.") -(luna-define-generic elmo-folder-unmark-read (folder numbers) +(luna-define-generic elmo-folder-unmark-read (folder numbers + &optional ignore-flags) "Un-mark messages as read. FOLDER is the ELMO folder structure. -NUMBERS is a list of message numbers to be processed.") +NUMBERS is a list of message numbers to be processed. +If IGNORE-FLAGS is non-nil, folder flags are not updated.") (luna-define-generic elmo-folder-mark-as-read (folder numbers &optional ignore-flags) "Mark messages as read. FOLDER is the ELMO folder structure. -NUMBERS is a list of message numbers to be processed.") +NUMBERS is a list of message numbers to be processed. +If IGNORE-FLAGS is non-nil, folder flags are not updated.") (luna-define-generic elmo-folder-unmark-answered (folder numbers) "Un-mark messages as answered. @@ -1170,7 +1173,9 @@ FIELD is a symbol of the field." number 'important)))) -(luna-define-method elmo-folder-unmark-read ((folder elmo-folder) numbers) +(luna-define-method elmo-folder-unmark-read ((folder elmo-folder) + numbers + &optional ignore-flags) (when (elmo-folder-msgdb-internal folder) (dolist (number numbers) (elmo-msgdb-unset-status (elmo-folder-msgdb folder)