[gnus git] branch master updated: m0-11-117-gaaa6f74 =1= Fixups when displaying certain attachments

Lars <[email protected]> Mon, 26 Jan 2015 04:26:38 +0100
Newsgroups gmane.emacs.gnus.cvs
Message-ID <[email protected]>
       via  aaa6f741d48c765c5af9312004d6d49e14c9304c (commit)
      from  41ae216e315822e665c09a555ca5099ffeeee89a (commit)


- Log -----------------------------------------------------------------
commit aaa6f741d48c765c5af9312004d6d49e14c9304c
Author: Peder O. Klingenberg <[email protected]>
Date:   Mon Jan 26 14:26:27 2015 +1100

    Fixups when displaying certain attachments
    
    * mm-decode.el (mm-display-part): Make non-string methods work.
    Non-string methods are funcalled and work just fine, the test was
    bogus.
    * mm-decode.el (mm-display-external): Show "external" lisp viewers in
    whole frame.

diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 9aebb54..11f1282 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
+2014-12-30  Peder O. Klingenberg  <[email protected]>
+
+	* mm-decode.el (mm-display-part): Make non-string methods work.
+	Non-string methods are funcalled and work just fine, the test was
+	bogus.
+	* mm-decode.el (mm-display-external): Show "external" lisp viewers in
+	whole frame.
+
 2015-01-26  Lars Ingebrigtsen  <[email protected]>
 
 	* nnimap.el (nnimap-request-accept-article): Allow respooling using
diff --git a/lisp/mm-decode.el b/lisp/mm-decode.el
index fb32ad9..f03b9c9 100644
--- a/lisp/mm-decode.el
+++ b/lisp/mm-decode.el
@@ -833,18 +833,18 @@ external if displayed external."
 		'inline)
 	    (setq external
 		  (and method	      ;; If nil, we always use "save".
-		       (stringp method) ;; 'mailcap-save-binary-file
 		       (or (eq mm-enable-external t)
 			   (and (eq mm-enable-external 'ask)
 				(y-or-n-p
 				 (concat
 				  "Display part (" type
-				  ") using external program"
-				  ;; Can non-string method ever happen?
+				  ") "
 				  (if (stringp method)
 				      (concat
-				       " \"" (format method filename) "\"")
-				    "")
+				       "using external program \""
+				       (format method filename) "\"")
+				    (format
+				     "by calling `%s' on the contents)" method))
 				  "? "))))))
 	    (if external
 		(mm-display-external
@@ -885,7 +885,15 @@ external if displayed external."
 				     (mm-handle-media-type handle) t))))
 	      (unwind-protect
 		  (if method
-		      (funcall method)
+		      (progn
+			(when (and (boundp 'gnus-summary-buffer)
+				   (bufferp gnus-summary-buffer)
+				   (buffer-name gnus-summary-buffer))
+			  ;; So that we pop back to the right place, sortof.
+			  (switch-to-buffer gnus-summary-buffer)
+			  (switch-to-buffer mm))
+			(delete-other-windows)
+			(funcall method))
 		    (mm-save-part handle))
 		(when (and (not non-viewer)
 			   method)

-----------------------------------------------------------------------
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we listed those
revisions in full, above.

Summary of changes:
 lisp/ChangeLog    |    8 ++++++++
 lisp/mm-decode.el |   20 ++++++++++++++------
 2 files changed, 22 insertions(+), 6 deletions(-)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Gnus Project".

The branch, master has been updated


hooks/post-receive
-- 
Gnus Project