X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=elmo%2Felmo-multi.el;h=5be1400ad6412c98b735b23d688ea977c6f10526;hb=64eb91d7fe775e78e0f1e6555b595e40f391260a;hp=26149cd65e028ea0453b79059e4fc9137216f64d;hpb=6a04c1030e0afd6d3705aed1d1d56bf41a01abe6;p=elisp%2Fwanderlust.git diff --git a/elmo/elmo-multi.el b/elmo/elmo-multi.el index 26149cd..5be1400 100644 --- a/elmo/elmo-multi.el +++ b/elmo/elmo-multi.el @@ -71,9 +71,9 @@ (dolist (fld (elmo-multi-folder-children-internal folder)) (elmo-folder-close-internal fld))) -(luna-define-method elmo-folder-close :around ((folder elmo-multi-folder)) +(luna-define-method elmo-folder-close :after ((folder elmo-multi-folder)) (dolist (fld (elmo-multi-folder-children-internal folder)) - (elmo-folder-close fld))) + (elmo-folder-set-msgdb-internal fld nil))) (luna-define-method elmo-folder-expand-msgdb-path ((folder elmo-multi-folder)) @@ -584,53 +584,51 @@ (setq msg-list (cdr msg-list))) ret-val)) -(luna-define-method elmo-folder-mark-as-important :around ((folder +(luna-define-method elmo-folder-mark-as-important :before ((folder elmo-multi-folder) numbers) (dolist (folder-numbers (elmo-multi-make-folder-numbers-list folder numbers)) (elmo-folder-mark-as-important (car folder-numbers) - (cdr folder-numbers))) - (luna-call-next-method)) + (cdr folder-numbers)))) -(luna-define-method elmo-folder-unmark-important :around ((folder +(luna-define-method elmo-folder-unmark-important :before ((folder elmo-multi-folder) numbers) (dolist (folder-numbers (elmo-multi-make-folder-numbers-list folder numbers)) (elmo-folder-unmark-important (car folder-numbers) - (cdr folder-numbers))) - (luna-call-next-method)) + (cdr folder-numbers)))) -(luna-define-method elmo-folder-mark-as-read :around ((folder +(luna-define-method elmo-folder-mark-as-read :before ((folder elmo-multi-folder) - numbers) + numbers + &optional ignore-flag) (dolist (folder-numbers (elmo-multi-make-folder-numbers-list folder numbers)) (elmo-folder-mark-as-read (car folder-numbers) - (cdr folder-numbers))) - (luna-call-next-method)) + (cdr folder-numbers) + ignore-flag))) -(luna-define-method elmo-folder-unmark-read :around ((folder +(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))) - (luna-call-next-method)) + (cdr folder-numbers) + ignore-flag))) -(luna-define-method elmo-folder-mark-as-answered :around ((folder +(luna-define-method elmo-folder-mark-as-answered :before ((folder elmo-multi-folder) numbers) (dolist (folder-numbers (elmo-multi-make-folder-numbers-list folder numbers)) (elmo-folder-mark-as-answered (car folder-numbers) - (cdr folder-numbers))) - (luna-call-next-method)) + (cdr folder-numbers)))) -(luna-define-method elmo-folder-unmark-answered :around ((folder +(luna-define-method elmo-folder-unmark-answered :before ((folder elmo-multi-folder) numbers) (dolist (folder-numbers (elmo-multi-make-folder-numbers-list folder numbers)) (elmo-folder-unmark-answered (car folder-numbers) - (cdr folder-numbers))) - (luna-call-next-method)) + (cdr folder-numbers)))) (require 'product) (product-provide (provide 'elmo-multi) (require 'elmo-version))