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")
+ (interactive "bDelete windows on (buffer):\nP")
(let ((buffer (window-normalize-buffer buffer-or-name))
;; Handle the "inverted" meaning of the FRAME argument wrt other
;; `window-list-1' based function.