* lisp/mail/rmail.el (rmail-file-coding-system): It's only ever used
in a boolean sense, so just make it a boolean, and fix the doc.
(rmail-show-mime-function, rmail-mime-feature)
(rmail-require-mime-maybe): Doc fixes.
(rmail-show-message-1): Check rmail-show-mime-function is non-nil.
* lisp/mail/rmailmm.el (rmail-show-mime): Doc fix.
lisp/simple.el (mail-encode-mml): New defvar.
lisp/mail/rmail.el (mail-encode-mml): Add a defvar.
(rmail-enable-mime-composing): Default to t.
(rmail-forward): Use MIME method of forwarding only if both
rmail-enable-mime-composing and rmail-enable-mime are non-nil.
Set mail-encode-mml non-nil if the MIME method was used.
lisp/mail/sendmail.el (mml-to-mime): Add autoload form.
(mail-encode-mml): Add a defvar.
(mail-mode): Make mail-encode-mml buffer-local and initialize it
to nil.
(mail-send): If mail-encode-mml is non-nil, run the outgoing
message through mml-to-mime, and reset mail-encode-mml to nil.
lisp/mail/rmailmm.el (rmail-mime-insert-tagline): Insert an extra
newline before and after the tag line, so it doesn't interfere
with determining the paragraph direction of bidirectional text.
* window.el (get-lru-window, get-mru-window)
(get-largest-window): Never return a minibuffer window.
(display-buffer-pop-up-window): Fix a bug that could lead to
reusing the minibuffer window.
(display-buffer): Pass original specifier argument to
display-buffer-function instead of the normalized one.
Reported by Thierry Volpiatto <thierry.volpiatto@gmail.com>.
* lisp/mail/mail-utils.el (mail-dont-reply-to-names): New variable,
from rmail-dont-reply-to-names. Callers changed.
(mail-dont-reply-to): Rename from mail-dont-reply-to.
(rmail-dont-reply-to): Make it an obsolete alias.
* lisp/mail/rmail.el (rmail-default-dont-reply-to-names): Default to
nil, and make obsolete.
(rmail-dont-reply-to-names): Alias to mail-dont-reply-to-names.
* lisp/mail/rmailsum.el (rmail-summary-sort-by-correspondent): Doc fix.
* lisp/mail/rmailsort.el (rmail-sort-by-correspondent)
(rmail-select-correspondent): Doc fix. Use mail-dont-reply-to.
* lisp/mail/rmail.el (rmail-reply): Use mail-dont-reply-to.
* lisp/mail/sendmail.el (mail-return-action): New var.
(mail-mode): Make it buffer-local.
(mail-bury): Obey it. Move special Rmail window handling to
rmail-mail-return.
(mail, mail-setup): New arg RETURN-ACTION.
(sendmail-user-agent-compose): Move from simple.el.
* lisp/simple.el (sendmail-user-agent-compose): Move to sendmail.el.
(compose-mail): New arg RETURN-ACTION.
(compose-mail-other-window, compose-mail-other-frame): Likewise.
* lisp/gnus/gnus-msg.el (gnus-msg-mail): New arg RETURN-ACTION. Pass it to
message-mail.
* lisp/gnus/message.el (message-mail): New arg RETURN-ACTION.
(message-return-action): New var.
(message-bury): Use it.
(message-mode): Make it buffer-local.
(message-send-and-exit): Always call message-bury.
(message-tool-bar-gnome): Tweak tool-bar items. Add :vert-only tags.
* lisp/mail/rmail.el (rmail-mail-return): New function.
(rmail-start-mail): Pass it to compose-mail.
* lisp/mh-e/mh-comp.el (mh-user-agent-compose): New arg RETURN-ACTION.
* buff-menu.el (Buffer-menu-buffer-list): New var.
(Buffer-menu-revert-function, list-buffers-noselect): Use it, so a
restricted buffer list is not lost on revert (Bug#7749).