X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=emacs%2Fnotmuch-mua.el;h=00cd9808c1141f8e6ae470eaa63f2482652bfa5d;hb=3d15ed9290013e31a743c20139da16c8ccaa2bb7;hp=53802d2662d7db61f9836f9a7616f5c77ff36d74;hpb=c1221dd65a5497057909aeb21d7c50c65090bf6f;p=notmuch diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el index 53802d26..00cd9808 100644 --- a/emacs/notmuch-mua.el +++ b/emacs/notmuch-mua.el @@ -346,10 +346,25 @@ the From: address first." If PROMPT-FOR-SENDER is non-nil, the user will be prompted for the From: address first. If REPLY-ALL is non-nil, the message will be addressed to all recipients of the source message." + +;; In current emacs (24.3) select-active-regions is set to t by +;; default. The reply insertion code sets the region to the quoted +;; message to make it easy to delete (kill-region or C-w). These two +;; things combine to put the quoted message in the primary selection. +;; +;; This is not what the user wanted and is a privacy risk (accidental +;; pasting of the quoted message). We can avoid some of the problems +;; by let-binding select-active-regions to nil. This fixes if the +;; primary selection was previously in a non-emacs window but not if +;; it was in an emacs window. To avoid the problem in the latter case +;; we deactivate mark. + (let ((sender (when prompt-for-sender - (notmuch-mua-prompt-for-sender)))) - (notmuch-mua-reply query-string sender reply-all))) + (notmuch-mua-prompt-for-sender))) + (select-active-regions nil)) + (notmuch-mua-reply query-string sender reply-all) + (deactivate-mark))) (defun notmuch-mua-send-and-exit (&optional arg) (interactive "P")