summaryrefslogtreecommitdiff
path: root/lisp/window.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2019-03-09 10:07:46 -0800
committerGlenn Morris <rgm@gnu.org>2019-03-09 10:07:46 -0800
commit3b63afd73b541ea559aa58edc1901c8b30e2af40 (patch)
treea68afec4142bd100f3b6dfa3eb90aa2c0a71b34f /lisp/window.el
parente1819a254f28a7dcba3c395c345fe237a512e92e (diff)
parent0589de55c465627c16314519568f22daa62ff654 (diff)
downloademacs-3b63afd73b541ea559aa58edc1901c8b30e2af40.tar.gz
Merge from origin/emacs-26
0589de5 (origin/emacs-26) Fix markup of fake keys in the ELisp manual 82d4b98 Avoid errors in Auto Revert mode a3b1935 Mention empty strings in file name expansion, emacs lisp refe... a38da0d cc-mode.texi: Work around makeinfo alignment bug. Fix proble... 464ee80 Warn against recursive invocations of 'buffer-list-update-hoo... 60b5c10 Provide more details in doc-string of 'delete-windows-on' (Bu... f0be0f1 Improve documentation of 'delete-windows-on' f1bddc7 * lisp/frame.el (make-frame-command): Doc fix. (Bug#34715) 2848623 Avoid undefined behavior in gdb-mi.el dbf1837 * lisp/window.el (fit-frame-to-buffer): Make doc-string more ... 099ef44 Minor spelling and grammar fixes (bug#34756) 52fd400 Minor improvement of documentation of '(when CONDITION . SPEC)' f872b65 Improve documentation of 'auto-coding-functions' 04cad5e Fix visiting XML files with non-Unix EOL format a89fabe Update example major mode code in Elisp manual # Conflicts: # lisp/autorevert.el # lisp/window.el
Diffstat (limited to 'lisp/window.el')
-rw-r--r--lisp/window.el24
1 files changed, 21 insertions, 3 deletions
diff --git a/lisp/window.el b/lisp/window.el
index 39f4fa139bb..a8b65657a49 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -4697,6 +4697,8 @@ displayed there."
BUFFER-OR-NAME may be a buffer or the name of an existing buffer
and defaults to the current buffer.
+Interactively, prompt for the buffer.
+
The following non-nil values of the optional argument FRAME
have special meanings:
@@ -4713,9 +4715,25 @@ have special meanings:
Any other value of FRAME means consider all windows on all
frames.
-When a window showing BUFFER-OR-NAME is dedicated and the only
-window of its frame, that frame is deleted when there are other
-frames left."
+Interactively, FRAME is the prefix argument, so you can
+use \\[universal-argument] 0 to specify all windows only on
+the current terminal's frames.
+
+If a frame's root window shows the buffer specified by
+BUFFER-OR-NAME and is dedicated to that buffer and that frame
+does not host the active minibuffer window and there is at least
+one other frame on that frame's terminal, delete that frame.
+Otherwise, do not delete a frame's root window if it shows the
+buffer specified by BUFFER-OR-NAME and do not delete any frame's
+main window showing that buffer either. Rather, in any such
+case, call `switch-to-prev-buffer' to show another buffer in that
+window and make sure the window is no more dedicated to its
+buffer.
+
+If the buffer specified by BUFFER-OR-NAME is shown in a
+minibuffer window, do nothing for that window. For any window
+that does not show that buffer, remove the buffer from that
+window's lists of previous and next buffers."
(interactive "bDelete windows on (buffer):\nP")
(let ((buffer (window-normalize-buffer buffer-or-name))
;; Handle the "inverted" meaning of the FRAME argument wrt other