diff options
Diffstat (limited to 'lisp/mail/rmail.el')
-rw-r--r-- | lisp/mail/rmail.el | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el index 29460cc20f5..8ccf1bffdd6 100644 --- a/lisp/mail/rmail.el +++ b/lisp/mail/rmail.el @@ -620,14 +620,12 @@ Element N specifies the summary line for message N+1.") ;; Rmail buffer swapping variables. -(defvar rmail-buffer-swapped nil +(defvar-local rmail-buffer-swapped nil "If non-nil, `rmail-buffer' is swapped with `rmail-view-buffer'.") -(make-variable-buffer-local 'rmail-buffer-swapped) (put 'rmail-buffer-swapped 'permanent-local t) -(defvar rmail-view-buffer nil +(defvar-local rmail-view-buffer nil "Buffer which holds RMAIL message for MIME displaying.") -(make-variable-buffer-local 'rmail-view-buffer) (put 'rmail-view-buffer 'permanent-local t) ;; `Sticky' default variables. @@ -2723,6 +2721,12 @@ See also `unrmail-mbox-format'." :version "24.4" :group 'rmail-files) +(defcustom rmail-show-message-set-modified nil + "If non-nil, displaying an unseen message marks the Rmail buffer as modified." + :type 'boolean + :group 'rmail + :version "28.1") + (defun rmail-show-message-1 (&optional msg) "Show message MSG (default: current message) using `rmail-view-buffer'. Return text to display in the minibuffer if MSG is out of @@ -2750,6 +2754,8 @@ The current mail message becomes the message displayed." ;; Mark the message as seen, but preserve buffer modified flag. (let ((modiff (buffer-modified-p))) (rmail-set-attribute rmail-unseen-attr-index nil) + (and rmail-show-message-set-modified + (setq modiff t)) (unless modiff (restore-buffer-modified-p modiff))) ;; bracket the message in the mail |