* 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.
* mail/smtpmail.el: Autoload `auto-source-search' instead of
`auto-source-user-or-password.
(smtpmail-try-auth-methods): Use it.
* net/imap-hash.el: Autoload `auto-source-search' instead of
`auto-source-user-or-password.
(imap-hash-open-connection): Use it.
* net/tramp-imap.el: Autoload `auto-source-search' instead of
`auto-source-user-or-password.
(tramp-imap-passphrase-callback-function): Use it.
* net/tramp.el (tramp-default-method): Also check if
`auth-source-search' is bound.
(tramp-read-passwd): Use `auth-source-search' instead of
`auto-source-user-or-password'.
* url-parse.el (url-bit-for-url, url-user-for-url)
(url-password-for-url): Use `auto-source-search' instead of
`auto-source-user-or-password'.
* url-auth.el: Autoload `auto-source-search' instead of
`auto-source-user-or-password'.
(url-basic-auth, url-digest-auth, url-do-auth-source-search): Use it.
* mail/emacsbug.el (report-emacs-bug-insert-to-mailer): Check
report-emacs-bug-can-use-osx-open and use that if t.
(report-emacs-bug-can-use-osx-open): New function.
(report-emacs-bug): Rename can-xdg-email to can-insert-mail.
Check report-emacs-bug-can-use-osx-open also for can-insert-mail.
* 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).
* lisp/mail/mailalias.el (build-mail-aliases): Make it interactive.
* lisp/mail/sendmail.el (build-mail-aliases): Update autoload.
* doc/misc/faq.texi (Expanding aliases when sending mail):
Now build-mail-aliases is interactive.
* src/dispextern.h (struct it): New member overlay_strings_charpos.
* src/xdisp.c (next_overlay_string, load_overlay_strings): Record the
charpos where we computed n_overlay_strings.
(next_overlay_string): Load overlay strings at recorded position,
which may not be the same as the iterator's charpos (Bug#7016).