From: Juri Linkov Date: Fri, 19 May 2023 18:04:50 +0000 (+0300) Subject: Split windows horizontally in places that use split to create a new window. X-Git-Tag: emacs-29.0.92~131 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=8e61d23f71e75225e1e48a572db76c2845a4201a;p=emacs.git Split windows horizontally in places that use split to create a new window. * lisp/tab-bar.el (tab-bar-new-tab-to): * lisp/window.el (window-state-put): To create a new window, split horizontally instead of vertically. Use 'window-safe-min-width' for the SIZE arg of 'split-window'. (bug#62592) --- diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el index ab428b81631..73f2ff77c50 100644 --- a/lisp/tab-bar.el +++ b/lisp/tab-bar.el @@ -1568,7 +1568,8 @@ After the tab is created, the hooks in (window-state-put (window-state-get))) ;; Create a new window to get rid of old window parameters ;; (e.g. prev/next buffers) of old window. - (split-window) (delete-window)))) + (split-window nil window-safe-min-width t) + (delete-window)))) (let ((buffer (if (and (functionp tab-bar-new-tab-choice) diff --git a/lisp/window.el b/lisp/window.el index 016d53ffbdd..a11b1a51f8f 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -6382,7 +6382,7 @@ windows can get as small as `window-safe-min-height' and (selected-window))) (delete-other-windows-internal window root) ;; Create a new window to replace the existing one. - (setq window (prog1 (split-window window) + (setq window (prog1 (split-window window window-safe-min-width t) (delete-window window))))) (set-window-dedicated-p window nil)