From: Katsumi Yamaoka Date: Thu, 10 Jun 2010 05:33:55 +0000 (+0000) Subject: Synch with Gnus trunk. X-Git-Tag: emacs-pretest-24.0.90~104^2~275^2~438^2~77^2 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=3e3ab3ab4750226611eb7071b0554f4e74336e5a;p=emacs.git Synch with Gnus trunk. (gnus-mime-buttonized-part-id): New internal variable. (gnus-article-edit-part): Bind it to make last part that is substituted or deleted visible. (gnus-mime-display-single): Buttonize part of which id equals to gnus-mime-buttonized-part-id. --- diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index f233e65554a..30743d11289 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,11 @@ +2010-06-10 Katsumi Yamaoka + + * gnus-art.el (gnus-mime-buttonized-part-id): New internal variable. + (gnus-article-edit-part): Bind it to make last part that is substituted + or deleted visible. + (gnus-mime-display-single): Buttonize part of which id equals to + gnus-mime-buttonized-part-id. + 2010-06-10 Dan Christensen * gnus-util.el (gnus-user-date): Use gnus-date-get-time. diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index 2707b51134c..6b20fa678d0 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -4896,6 +4896,10 @@ General format specifiers can also be used. See Info node (t (gnus-article-goto-part n))))) +(defvar gnus-mime-buttonized-part-id nil + "ID of a mime part that should be buttonized. +`gnus-mime-save-part-and-strip' and `gnus-mime-delete-part' bind it.") + (eval-when-compile (defsubst gnus-article-edit-part (handles &optional current-id) "Edit an article in order to delete a mime part. @@ -4938,10 +4942,15 @@ and `gnus-mime-delete-part', and not provided at run-time normally." ,(gnus-group-read-only-p) ,gnus-summary-buffer no-highlight)) t) - (gnus-article-edit-done) + ;; Force buttonizing this part. + (let ((gnus-mime-buttonized-part-id current-id)) + (gnus-article-edit-done)) (gnus-configure-windows 'article) (when (and current-id (integerp gnus-auto-select-part)) - (gnus-article-jump-to-part (+ current-id gnus-auto-select-part))))) + (gnus-article-jump-to-part + (min (max (+ current-id gnus-auto-select-part) 1) + (with-current-buffer gnus-article-buffer + (length gnus-article-mime-handle-alist))))))) (defun gnus-mime-replace-part (file) "Replace MIME part under point with an external body." @@ -5844,7 +5853,8 @@ If displaying \"text/html\" is discouraged \(see ((or (bobp) (eq (char-before (1- (point))) ?\n)) 0) (t 1)))) (when (or (not display) - (not (gnus-unbuttonized-mime-type-p type))) + (not (gnus-unbuttonized-mime-type-p type)) + (eq id gnus-mime-buttonized-part-id)) (gnus-insert-mime-button handle id (list (or display (and not-attachment text)))) (gnus-article-insert-newline)