changeset 6724:6728ad7f85e9

(rmail-summary-disable): New function. (rmail-summary-enable): New function. (rmail-summary-mode): Call rmail-summary-enable.
author Karl Heuer <kwzh@gnu.org>
date Thu, 07 Apr 1994 07:09:16 +0000
parents 6ff74185a672
children e044bd05a1da
files lisp/mail/rmailsum.el
diffstat 1 files changed, 16 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/mail/rmailsum.el	Thu Apr 07 06:56:25 1994 +0000
+++ b/lisp/mail/rmailsum.el	Thu Apr 07 07:09:16 1994 +0000
@@ -515,7 +515,6 @@
   (kill-all-local-variables)
   (setq major-mode 'rmail-summary-mode)
   (setq mode-name "RMAIL Summary")
-  (use-local-map rmail-summary-mode-map)
   (setq truncate-lines t)
   (setq buffer-read-only t)
   (set-syntax-table text-mode-syntax-table)
@@ -526,11 +525,25 @@
   (make-local-variable 'rmail-summary-redo)
   (setq rmail-summary-redo nil)
   (make-local-variable 'revert-buffer-function)
-  (setq revert-buffer-function 'rmail-update-summary)
   (make-local-variable 'post-command-hook)
-  (add-hook 'post-command-hook 'rmail-summary-rmail-update)
+  (rmail-summary-enable)
   (run-hooks 'rmail-summary-mode-hook))
 
+;; Summary features need to be disabled during edit mode.
+(defun rmail-summary-disable ()
+  (save-excursion
+    (set-buffer rmail-summary-buffer)
+    (use-local-map text-mode-map)
+    (remove-hook 'post-command-hook 'rmail-summary-rmail-update)
+    (setq revert-buffer-function nil)))
+
+(defun rmail-summary-enable ()
+  (save-excursion
+    (set-buffer rmail-summary-buffer)
+    (use-local-map rmail-summary-mode-map)
+    (add-hook 'post-command-hook 'rmail-summary-rmail-update)
+    (setq revert-buffer-function 'rmail-update-summary)))
+
 ;; Show in Rmail the message described by the summary line that point is on,
 ;; but only if the Rmail buffer is already visible.
 ;; This is a post-command-hook in summary buffers.