emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r110073: When toggling mime processin


From: Richard Stallman
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r110073: When toggling mime processing off, just don't do mime processing.
Date: Mon, 17 Sep 2012 07:49:10 -0400
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 110073
committer: Richard Stallman <address@hidden>
branch nick: trunk
timestamp: Mon 2012-09-17 07:49:10 -0400
message:
  When toggling mime processing off, just don't do mime processing.
modified:
  lisp/ChangeLog
  lisp/mail/rmailmm.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2012-09-17 11:44:48 +0000
+++ b/lisp/ChangeLog    2012-09-17 11:49:10 +0000
@@ -1,5 +1,10 @@
 2012-09-17  Richard Stallman  <address@hidden>
 
+       * mail/rmailmm.el (rmail-mime-toggle-raw): Do rmail-mime-insert
+       only in the mime-shown mode, not in raw mode.
+       (rmail-mime): Toggle off mime by displaying the message without
+       mime processing.
+
        * mail/rmail.el (rmail-retry-failure): Turn off mime processing first.
 
        * epa-mail.el (epa-mail-encrypt): Fix bug when a name has no key.

=== modified file 'lisp/mail/rmailmm.el'
--- a/lisp/mail/rmailmm.el      2012-05-09 03:06:08 +0000
+++ b/lisp/mail/rmailmm.el      2012-09-17 11:49:10 +0000
@@ -389,13 +389,13 @@
        ;; Enter the raw mode.
        (rmail-mime-raw-mode entity)
       ;; Enter the shown mode.
-      (rmail-mime-shown-mode entity))
-    (let ((inhibit-read-only t)
-         (modified (buffer-modified-p)))
-      (save-excursion
-       (goto-char (aref segment 1))
-       (rmail-mime-insert entity)
-       (restore-buffer-modified-p modified)))))
+      (rmail-mime-shown-mode entity)
+      (let ((inhibit-read-only t)
+           (modified (buffer-modified-p)))
+       (save-excursion
+         (goto-char (aref segment 1))
+         (rmail-mime-insert entity)
+         (restore-buffer-modified-p modified))))))
 
 (defun rmail-mime-toggle-hidden ()
   "Hide or show the body of the MIME-entity at point."
@@ -1212,7 +1212,7 @@
          (if (rmail-mime-display-header current)
              (delete-char (- (aref segment 2) (aref segment 1))))
          (insert-buffer-substring rmail-mime-mbox-buffer
-                                    (aref header 0) (aref header 1)))
+                                  (aref header 0) (aref header 1)))
        ;; tagline
        (if (rmail-mime-display-tagline current)
            (delete-char (- (aref segment 3) (aref segment 2))))
@@ -1261,14 +1261,17 @@
   (interactive (list current-prefix-arg nil))
   (if rmail-enable-mime
       (with-current-buffer rmail-buffer
-       (if (rmail-mime-message-p)
-           (let ((rmail-mime-mbox-buffer rmail-view-buffer)
-                 (rmail-mime-view-buffer rmail-buffer)
-                 (entity (get-text-property
-                          (progn
-                            (or arg (goto-char (point-min)))
-                            (point)) 'rmail-mime-entity)))
-             (if (or (not arg) entity) (rmail-mime-toggle-raw state)))
+       (if (or (rmail-mime-message-p)
+               (get-text-property (point-min) 'rmail-mime-hidden))
+           (let* ((hidden (get-text-property (point-min) 'rmail-mime-hidden))
+                  (desired-hidden (if state (eq state 'raw) (not hidden))))
+             (unless (eq hidden desired-hidden)
+               (if (not desired-hidden)
+                   (rmail-show-message rmail-current-message)
+                 (let ((rmail-enable-mime nil)
+                       (inhibit-read-only t))
+                   (rmail-show-message rmail-current-message)
+                   (add-text-properties (point-min) (point-max) 
'(rmail-mime-hidden t))))))
          (message "Not a MIME message, just toggling headers")
          (rmail-toggle-header)))
     (let* ((data (rmail-apply-in-message rmail-current-message 'buffer-string))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]