mu4e-view: fallback to raw view for unreadable messages
So users can at least see _something_...
This commit is contained in:
@ -134,7 +134,7 @@ Then, display the results."
|
|||||||
((mu4e-current-buffer-type-p 'view)
|
((mu4e-current-buffer-type-p 'view)
|
||||||
(when (mu4e--view-detached-p (current-buffer))
|
(when (mu4e--view-detached-p (current-buffer))
|
||||||
(mu4e-error
|
(mu4e-error
|
||||||
"Cannot navigate in a detached view buffer."))
|
"Cannot navigate in a detached view buffer"))
|
||||||
(mu4e-get-headers-buffer))
|
(mu4e-get-headers-buffer))
|
||||||
;; fallback; but what would trigger this?
|
;; fallback; but what would trigger this?
|
||||||
(t (mu4e-get-headers-buffer))))
|
(t (mu4e-get-headers-buffer))))
|
||||||
@ -235,9 +235,10 @@ If this succeeds, return the new docid. Otherwise, return nil."
|
|||||||
;;; Interactive functions
|
;;; Interactive functions
|
||||||
(defun mu4e-view-action (&optional msg)
|
(defun mu4e-view-action (&optional msg)
|
||||||
"Ask user for some action to apply on MSG, then do it.
|
"Ask user for some action to apply on MSG, then do it.
|
||||||
If MSG is nil apply action to message returned
|
If MSG is nil apply action to message returned by
|
||||||
bymessage-at-point. The actions are specified in
|
`mu4e-message-at-point'.
|
||||||
`mu4e-view-actions'."
|
|
||||||
|
The actions are specified in `mu4e-view-actions'."
|
||||||
(interactive)
|
(interactive)
|
||||||
(let* ((msg (or msg (mu4e-message-at-point)))
|
(let* ((msg (or msg (mu4e-message-at-point)))
|
||||||
(actionfunc (mu4e-read-option "Action: " mu4e-view-actions)))
|
(actionfunc (mu4e-read-option "Action: " mu4e-view-actions)))
|
||||||
@ -327,7 +328,7 @@ Add this function to `mu4e-view-mode-hook' to enable this feature."
|
|||||||
"Detach the view buffer from its headers buffer."
|
"Detach the view buffer from its headers buffer."
|
||||||
(interactive)
|
(interactive)
|
||||||
(unless mu4e-linked-headers-buffer
|
(unless mu4e-linked-headers-buffer
|
||||||
(mu4e-error "This view buffer is already detached."))
|
(mu4e-error "This view buffer is already detached"))
|
||||||
(mu4e-message "Detached view buffer from %s"
|
(mu4e-message "Detached view buffer from %s"
|
||||||
(progn mu4e-linked-headers-buffer
|
(progn mu4e-linked-headers-buffer
|
||||||
(with-current-buffer mu4e-linked-headers-buffer
|
(with-current-buffer mu4e-linked-headers-buffer
|
||||||
@ -339,7 +340,7 @@ Add this function to `mu4e-view-mode-hook' to enable this feature."
|
|||||||
(rename-buffer (make-temp-name (buffer-name)) t))))
|
(rename-buffer (make-temp-name (buffer-name)) t))))
|
||||||
|
|
||||||
(defun mu4e-view-attach (headers-buffer)
|
(defun mu4e-view-attach (headers-buffer)
|
||||||
"Attaches a view buffer to a headers buffer."
|
"Attaches a view buffer to HEADERS-BUFFER."
|
||||||
(interactive
|
(interactive
|
||||||
(list (get-buffer (read-buffer
|
(list (get-buffer (read-buffer
|
||||||
"Select a headers buffer to attach to: " nil t
|
"Select a headers buffer to attach to: " nil t
|
||||||
@ -422,7 +423,6 @@ list."
|
|||||||
(mu4e--view-in-headers-context
|
(mu4e--view-in-headers-context
|
||||||
(mu4e-mark-execute-all)))
|
(mu4e-mark-execute-all)))
|
||||||
|
|
||||||
|
|
||||||
;;; URL handling
|
;;; URL handling
|
||||||
|
|
||||||
(defvar mu4e--view-link-map nil
|
(defvar mu4e--view-link-map nil
|
||||||
@ -640,7 +640,8 @@ As a side-effect, a message that is being viewed loses its
|
|||||||
;; problems later (#2260, #2508), so let's remove those
|
;; problems later (#2260, #2508), so let's remove those
|
||||||
(article-remove-cr)
|
(article-remove-cr)
|
||||||
(setq-local mu4e--view-message msg)
|
(setq-local mu4e--view-message msg)
|
||||||
(mu4e--view-render-buffer msg))
|
(ignore-errors
|
||||||
|
(mu4e--view-render-buffer msg)))
|
||||||
(mu4e-loading-mode 0)))
|
(mu4e-loading-mode 0)))
|
||||||
(unless (mu4e--view-detached-p gnus-article-buffer)
|
(unless (mu4e--view-detached-p gnus-article-buffer)
|
||||||
(with-current-buffer mu4e-linked-headers-buffer
|
(with-current-buffer mu4e-linked-headers-buffer
|
||||||
@ -741,8 +742,9 @@ determine which browser function to use."
|
|||||||
(set-buffer-modified-p nil)
|
(set-buffer-modified-p nil)
|
||||||
(add-hook 'kill-buffer-hook #'mu4e--view-kill-mime-handles))
|
(add-hook 'kill-buffer-hook #'mu4e--view-kill-mime-handles))
|
||||||
(epg-error
|
(epg-error
|
||||||
(mu4e-warn "EPG error: %s; fall back to raw view"
|
(mu4e-message "EPG error: %s; fall back to raw view"
|
||||||
(error-message-string err))))))
|
(error-message-string err))
|
||||||
|
(error)))))
|
||||||
|
|
||||||
(defun mu4e-view-refresh ()
|
(defun mu4e-view-refresh ()
|
||||||
"Refresh the message view."
|
"Refresh the message view."
|
||||||
|
|||||||
Reference in New Issue
Block a user