Function: window--try-to-split-window-in-direction
window--try-to-split-window-in-direction is a byte-compiled function
defined in window.el.gz.
Signature
(window--try-to-split-window-in-direction WINDOW DIRECTION ALIST)
Documentation
Try to split WINDOW in DIRECTION.
DIRECTION is passed as SIDE argument to split-window-no-error.
ALIST is a buffer display alist.
Source Code
;; Defined in /usr/src/emacs/lisp/window.el.gz
(defun window--try-to-split-window-in-direction (window direction alist)
"Try to split WINDOW in DIRECTION.
DIRECTION is passed as SIDE argument to `split-window-no-error'.
ALIST is a buffer display alist."
(and (not (frame-parameter (window-frame window) 'unsplittable))
(let* ((window-combination-limit
;; When `window-combination-limit' equals
;; `display-buffer' or equals `resize-window' and a
;; `window-height' or `window-width' alist entry are
;; present, bind it to t so resizing steals space
;; preferably from the window that was split.
(if (or (eq window-combination-limit 'display-buffer)
(and (eq window-combination-limit 'window-size)
(or (cdr (assq 'window-height alist))
(cdr (assq 'window-width alist)))))
t
window-combination-limit))
(new-window (split-window-no-error window nil direction)))
(and (window-live-p new-window) new-window))))