From a448879e49fb838a302b4e68d73e63c6b75d9175 Mon Sep 17 00:00:00 2001 From: Mark Walters Date: Mon, 12 Sep 2016 22:45:58 -0300 Subject: [PATCH] emacs: reply: remove wrong sig/enc status buttons This stops the (usually incorrect) sigstatus and encstatus buttons appearing when replying in emacs, and updates the test suite to match. Overriding the status button functions is a little unusual but much less intrusive than passing an argument all the way down the call chain. It also makes it clear exactly what it does. We also hide the application/pgp-encrypted part as it can only contain "Version: 1". We do this in notmuch show, which means it also happens when replying. --- emacs/notmuch-mua.el | 7 +++++-- emacs/notmuch-show.el | 3 +++ test/T310-emacs.sh | 2 -- test/T350-crypto.sh | 1 - 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el index fadf20fe..55bc2672 100644 --- a/emacs/notmuch-mua.el +++ b/emacs/notmuch-mua.el @@ -253,8 +253,11 @@ mutiple parts get a header." (notmuch-show-insert-header-p-function notmuch-mua-reply-insert-header-p-function) ;; Don't indent multipart sub-parts. (notmuch-show-indent-multipart nil)) - (notmuch-show-insert-body original (plist-get original :body) 0) - (buffer-substring-no-properties (point-min) (point-max))))) + ;; We don't want sigstatus buttons (an information leak and usually wrong anyway). + (letf (((symbol-function 'notmuch-crypto-insert-sigstatus-button) #'ignore) + ((symbol-function 'notmuch-crypto-insert-encstatus-button) #'ignore)) + (notmuch-show-insert-body original (plist-get original :body) 0) + (buffer-substring-no-properties (point-min) (point-max)))))) (set-mark (point)) (goto-char start) diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el index 5a585f38..641398dc 100644 --- a/emacs/notmuch-show.el +++ b/emacs/notmuch-show.el @@ -682,6 +682,9 @@ will return nil if the CID is unknown or cannot be retrieved." (indent-rigidly start (point) 1))) t) +(defun notmuch-show-insert-part-application/pgp-encrypted (msg part content-type nth depth button) + t) + (defun notmuch-show-insert-part-multipart/* (msg part content-type nth depth button) (let ((inner-parts (plist-get part :content)) (start (point))) diff --git a/test/T310-emacs.sh b/test/T310-emacs.sh index 202fc3bf..21675b68 100755 --- a/test/T310-emacs.sh +++ b/test/T310-emacs.sh @@ -384,8 +384,6 @@ References: <20091118002059.067214ed@hikari> --text follows this line-- Adrian Perez de Castro writes: -> [ Unknown signature status ] -> > Hello to all, > > I have just heard about Not Much today in some random Linux-related news diff --git a/test/T350-crypto.sh b/test/T350-crypto.sh index 8e298979..df2dc743 100755 --- a/test/T350-crypto.sh +++ b/test/T350-crypto.sh @@ -317,7 +317,6 @@ test_expect_equal \ "$expected" test_begin_subtest "Reply within emacs to an encrypted message" -test_subtest_known_broken test_emacs "(let ((message-hidden-headers '()) (notmuch-crypto-process-mime 't)) (notmuch-show \"subject:test.encrypted.message.002\")