# HG changeset patch
# User Richard M. Stallman <rms@gnu.org>
# Date 871079162 0
# Node ID e272bd93c93ce7275e3295d4e0b37f48e620fd90
# Parent  3e0e9b7e2307e887ab80b1a0cb292c5f407edb73
(view-just-bury): New variable.
(view-mode-exit): Obey it.

diff -r 3e0e9b7e2307 -r e272bd93c93c lisp/view.el
--- a/lisp/view.el	Fri Aug 08 22:25:31 1997 +0000
+++ b/lisp/view.el	Fri Aug 08 22:26:02 1997 +0000
@@ -120,6 +120,12 @@
 `kill-buffer'.")
 (make-variable-buffer-local 'view-exit-action)
 
+(defvar view-no-disable-on-exit nil
+  "If non-nil, View mode \"exit\" commands don't actually disable View mode.
+Instead, these commands just switch buffers or windows.
+This is set in certain buffers by specialized features such as help commands
+that use View mode automatically.")
+
 (defvar view-overlay nil
   "Overlay used to display where a search operation found its match.
 This is local in each buffer, once it is used.")
@@ -507,7 +513,8 @@
 		(setq old-window (car (cdr a))))
 	      (if (or (zerop c) (not (window-live-p old-window)))
 		  (setq old-window (selected-window)))))
-	(view-mode-disable)
+	(or view-no-disable-on-exit
+	    (view-mode-disable))
 	(while alist			; Restore windows with info.
 	  (if (and (window-live-p (setq window (car (car alist))))
 		   (eq buffer (window-buffer window)))