The main reason to introduce this new unexposed function is to allow
the buffer redisplay crypto switch to behaving in a more expected way.
The prefix to notmuch-show-redisplay buffer now switches the crypto
processing of the current show buffer, as opposed to switching the
logic of the notmuch-crypto-process-mime customization variable. This
behavior is more intuitive.
notmuch-crypto-process-mime customization variable for this show
buffer."
(interactive "sNotmuch show: ")
notmuch-crypto-process-mime customization variable for this show
buffer."
(interactive "sNotmuch show: ")
+ (let* ((process-crypto (if crypto-switch
+ (not notmuch-crypto-process-mime)
+ notmuch-crypto-process-mime)))
+ (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto)))
+
+(defun notmuch-show-worker (thread-id parent-buffer query-context buffer-name process-crypto)
(let* ((buffer-name (generate-new-buffer-name
(or buffer-name
(concat "*notmuch-" thread-id "*"))))
(buffer (get-buffer-create buffer-name))
(let* ((buffer-name (generate-new-buffer-name
(or buffer-name
(concat "*notmuch-" thread-id "*"))))
(buffer (get-buffer-create buffer-name))
- (process-crypto (if crypto-switch
- (not notmuch-crypto-process-mime)
- notmuch-crypto-process-mime))
(inhibit-read-only t))
(switch-to-buffer buffer)
(notmuch-show-mode)
(inhibit-read-only t))
(switch-to-buffer buffer)
(notmuch-show-mode)
"Refresh the current view (with crypto switch if prefix given).
Kills the current buffer and reruns notmuch show with the same
"Refresh the current view (with crypto switch if prefix given).
Kills the current buffer and reruns notmuch show with the same
-thread id. If a prefix is given, the current thread is
-redisplayed with the crypto switch activated, which switch the
-logic of the notmuch-crypto-process-mime customization variable."
+thread id. If a prefix is given, crypto processing is toggled."
(interactive "P")
(let ((thread-id notmuch-show-thread-id)
(parent-buffer notmuch-show-parent-buffer)
(query-context notmuch-show-query-context)
(interactive "P")
(let ((thread-id notmuch-show-thread-id)
(parent-buffer notmuch-show-parent-buffer)
(query-context notmuch-show-query-context)
- (buffer-name notmuch-show-buffer-name))
+ (buffer-name notmuch-show-buffer-name)
+ (process-crypto (if crypto-switch
+ (not notmuch-show-process-crypto)
+ notmuch-show-process-crypto)))
(notmuch-kill-this-buffer)
(notmuch-kill-this-buffer)
- (notmuch-show thread-id parent-buffer query-context buffer-name crypto-switch)))
+ (notmuch-show-worker thread-id parent-buffer query-context buffer-name process-crypto)))
(defvar notmuch-show-stash-map
(let ((map (make-sparse-keymap)))
(defvar notmuch-show-stash-map
(let ((map (make-sparse-keymap)))