aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeder O. Klingenberg2015-01-26 04:19:51 +0000
committerKatsumi Yamaoka2015-01-26 04:19:51 +0000
commitf6019361e26b0b305129b2230136d87df5d636c2 (patch)
treea6bc1c606636b5586afe80065b6c6847f53a8aeb
parent8e39ec680c7068c2dc2143bf915e5acca7bf7c0f (diff)
downloademacs-f6019361e26b0b305129b2230136d87df5d636c2.tar.gz
emacs-f6019361e26b0b305129b2230136d87df5d636c2.zip
[Gnus] Fixups when displaying certain attachments
-rw-r--r--lisp/gnus/ChangeLog8
-rw-r--r--lisp/gnus/mm-decode.el20
2 files changed, 22 insertions, 6 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index e47e8ad282c..7ef526b4253 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,11 @@
12015-01-26 Peder O. Klingenberg <peder@klingenberg.no>
2
3 * mm-decode.el (mm-display-part): Make non-string methods work.
4 Non-string methods are funcalled and work just fine, the test was
5 bogus.
6 * mm-decode.el (mm-display-external): Show "external" lisp viewers in
7 whole frame.
8
12015-01-26 Lars Ingebrigtsen <larsi@gnus.org> 92015-01-26 Lars Ingebrigtsen <larsi@gnus.org>
2 10
3 * nnimap.el (nnimap-request-accept-article): Allow respooling using 11 * nnimap.el (nnimap-request-accept-article): Allow respooling using
diff --git a/lisp/gnus/mm-decode.el b/lisp/gnus/mm-decode.el
index fb32ad9e8e6..f03b9c9b484 100644
--- a/lisp/gnus/mm-decode.el
+++ b/lisp/gnus/mm-decode.el
@@ -833,18 +833,18 @@ external if displayed external."
833 'inline) 833 'inline)
834 (setq external 834 (setq external
835 (and method ;; If nil, we always use "save". 835 (and method ;; If nil, we always use "save".
836 (stringp method) ;; 'mailcap-save-binary-file
837 (or (eq mm-enable-external t) 836 (or (eq mm-enable-external t)
838 (and (eq mm-enable-external 'ask) 837 (and (eq mm-enable-external 'ask)
839 (y-or-n-p 838 (y-or-n-p
840 (concat 839 (concat
841 "Display part (" type 840 "Display part (" type
842 ") using external program" 841 ") "
843 ;; Can non-string method ever happen?
844 (if (stringp method) 842 (if (stringp method)
845 (concat 843 (concat
846 " \"" (format method filename) "\"") 844 "using external program \""
847 "") 845 (format method filename) "\"")
846 (format
847 "by calling `%s' on the contents)" method))
848 "? ")))))) 848 "? "))))))
849 (if external 849 (if external
850 (mm-display-external 850 (mm-display-external
@@ -885,7 +885,15 @@ external if displayed external."
885 (mm-handle-media-type handle) t)))) 885 (mm-handle-media-type handle) t))))
886 (unwind-protect 886 (unwind-protect
887 (if method 887 (if method
888 (funcall method) 888 (progn
889 (when (and (boundp 'gnus-summary-buffer)
890 (bufferp gnus-summary-buffer)
891 (buffer-name gnus-summary-buffer))
892 ;; So that we pop back to the right place, sortof.
893 (switch-to-buffer gnus-summary-buffer)
894 (switch-to-buffer mm))
895 (delete-other-windows)
896 (funcall method))
889 (mm-save-part handle)) 897 (mm-save-part handle))
890 (when (and (not non-viewer) 898 (when (and (not non-viewer)
891 method) 899 method)