Make 'clone-indirect-buffer-other-window' use other window

Previously, depending on the settings in 'display-buffer-alist',
'clone-indirect-buffer-other-window' would display the cloned
buffer in the original window, behaving identically to
'clone-indirect-buffer' with a non-nil display-flag.  This
behavior was inconsistent with other-window commands which
always used another window.
Now, 'clone-indirect-buffer-other-window' uses
'switch-to-buffer-other-window'.  This means it uses the same
logic as other-window commands like 'find-file-other-window'
and 'info-other-window'.
display-flag was kept for API stability and functional
compatibility reasons.
* lisp/simple.el: (clone-indirect-buffer-other-window): Use
switch-to-buffer-other-window.  (Bug#70819)
This commit is contained in:
Richard Sent 2024-05-27 11:32:00 -04:00 committed by Eli Zaretskii
parent 35e65a84eb
commit 579aaa1ec2

View file

@ -10683,8 +10683,10 @@ Returns the newly created indirect buffer."
(list (if current-prefix-arg
(read-buffer "Name of indirect buffer: " (current-buffer)))
t)))
(let ((pop-up-windows t))
(clone-indirect-buffer newname display-flag norecord)))
;; For compatibility, don't display the buffer if display-flag is nil.
(let ((buffer (clone-indirect-buffer newname nil norecord)))
(when display-flag
(switch-to-buffer-other-window buffer norecord))))
;;; Handling of Backspace and Delete keys.