aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/help.el
diff options
context:
space:
mode:
authorMartin Rudalics2011-09-21 10:20:21 +0200
committerMartin Rudalics2011-09-21 10:20:21 +0200
commitcf4eacfdca9685473374498e17ace141d71c9ad9 (patch)
tree6b15976a360657769ca615a73be5eab2adf128a6 /lisp/help.el
parent3341db6299a2bb63a641210d72f73e93e2d1542e (diff)
downloademacs-cf4eacfdca9685473374498e17ace141d71c9ad9.tar.gz
emacs-cf4eacfdca9685473374498e17ace141d71c9ad9.zip
Rewrite code quitting windows and restoring the previous buffer.
* window.el (set-window-buffer-start-and-point): Call set-window-start with NOFORCE argument t. Suggested by Thierry Volpiatto <thierry.volpiatto@gmail.com>. (quit-window): Reword doc-string. Handle new format of quit-restore parameter. Don't delete window if it has a previous buffer we can show instead of the present one. (display-buffer-record-window): Rewrite using a new format for the quit-restore window parameter (special-display-popup-frame, display-buffer-same-window) (display-buffer-reuse-window, display-buffer-pop-up-frame) (display-buffer-pop-up-window, display-buffer-use-some-window): Adapt symbol passed to display-buffer-record-window. * help.el (help-window-setup): Handle new format of quit-restore parameter.
Diffstat (limited to 'lisp/help.el')
-rw-r--r--lisp/help.el18
1 files changed, 9 insertions, 9 deletions
diff --git a/lisp/help.el b/lisp/help.el
index 0c8d67106d3..f4338c28ffb 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -1066,7 +1066,7 @@ HELP-WINDOW is the window used for displaying the help buffer."
1066 (let* ((help-buffer (when (window-live-p help-window) 1066 (let* ((help-buffer (when (window-live-p help-window)
1067 (window-buffer help-window))) 1067 (window-buffer help-window)))
1068 (help-setup (when (window-live-p help-window) 1068 (help-setup (when (window-live-p help-window)
1069 (window-parameter help-window 'help-setup)))) 1069 (car (window-parameter help-window 'quit-restore)))))
1070 (when help-buffer 1070 (when help-buffer
1071 ;; Handle `help-window-point-marker'. 1071 ;; Handle `help-window-point-marker'.
1072 (when (eq (marker-buffer help-window-point-marker) help-buffer) 1072 (when (eq (marker-buffer help-window-point-marker) help-buffer)
@@ -1077,7 +1077,7 @@ HELP-WINDOW is the window used for displaying the help buffer."
1077 (cond 1077 (cond
1078 ((or (eq help-window (selected-window)) 1078 ((or (eq help-window (selected-window))
1079 (and (or (eq help-window-select t) 1079 (and (or (eq help-window-select t)
1080 (eq help-setup 'new-frame) 1080 (eq help-setup 'frame)
1081 (and (eq help-window-select 'other) 1081 (and (eq help-window-select 'other)
1082 (eq (window-frame help-window) (selected-frame)) 1082 (eq (window-frame help-window) (selected-frame))
1083 (> (length (window-list nil 'no-mini)) 2))) 1083 (> (length (window-list nil 'no-mini)) 2)))
@@ -1085,12 +1085,12 @@ HELP-WINDOW is the window used for displaying the help buffer."
1085 ;; The help window is or gets selected ... 1085 ;; The help window is or gets selected ...
1086 (help-window-display-message 1086 (help-window-display-message
1087 (cond 1087 (cond
1088 ((eq help-setup 'new-window) 1088 ((eq help-setup 'window)
1089 ;; ... and is new, ... 1089 ;; ... and is new, ...
1090 "Type \"q\" to delete help window") 1090 "Type \"q\" to delete help window")
1091 ((eq help-setup 'new-frame) 1091 ((eq help-setup 'frame)
1092 "Type \"q\" to delete help frame") 1092 "Type \"q\" to delete help frame")
1093 ((eq help-setup 'reuse-other) 1093 ((eq help-setup 'other)
1094 ;; ... or displayed some other buffer before. 1094 ;; ... or displayed some other buffer before.
1095 "Type \"q\" to restore previous buffer")) 1095 "Type \"q\" to restore previous buffer"))
1096 help-window t)) 1096 help-window t))
@@ -1100,19 +1100,19 @@ HELP-WINDOW is the window used for displaying the help buffer."
1100 ;; other one is the selected one. 1100 ;; other one is the selected one.
1101 (help-window-display-message 1101 (help-window-display-message
1102 (cond 1102 (cond
1103 ((eq help-setup 'new-window) 1103 ((eq help-setup 'window)
1104 "Type \\[delete-other-windows] to delete the help window") 1104 "Type \\[delete-other-windows] to delete the help window")
1105 ((eq help-setup 'reuse-other) 1105 ((eq help-setup 'other)
1106 "Type \"q\" in help window to restore its previous buffer")) 1106 "Type \"q\" in help window to restore its previous buffer"))
1107 help-window 'other)) 1107 help-window 'other))
1108 (t 1108 (t
1109 ;; The help window is not selected ... 1109 ;; The help window is not selected ...
1110 (help-window-display-message 1110 (help-window-display-message
1111 (cond 1111 (cond
1112 ((eq help-setup 'new-window) 1112 ((eq help-setup 'window)
1113 ;; ... and is new, ... 1113 ;; ... and is new, ...
1114 "Type \"q\" in help window to delete it") 1114 "Type \"q\" in help window to delete it")
1115 ((eq help-setup 'reuse-other) 1115 ((eq help-setup 'other)
1116 ;; ... or displayed some other buffer before. 1116 ;; ... or displayed some other buffer before.
1117 "Type \"q\" in help window to restore previous buffer")) 1117 "Type \"q\" in help window to restore previous buffer"))
1118 help-window)))))) 1118 help-window))))))