Mercurial > emacs
changeset 95769:f0eb9520e64c
(window--splittable-p, window--try-to-split-window):
Don't use with-selected-window to avoid messing up get-lru-window.
author | Martin Rudalics <rudalics@gmx.at> |
---|---|
date | Tue, 10 Jun 2008 07:44:56 +0000 |
parents | f1d2c7af44ae |
children | 8e75fd070ee2 |
files | lisp/window.el |
diffstat | 1 files changed, 7 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/window.el Tue Jun 10 03:29:43 2008 +0000 +++ b/lisp/window.el Tue Jun 10 07:44:56 2008 +0000 @@ -806,7 +806,7 @@ - When WINDOW is split evenly, the emanating windows are at least `window-min-width' or two (whichever is larger) columns wide." (when (window-live-p window) - (with-selected-window window + (with-current-buffer (window-buffer window) (if horizontal ;; A window can be split horizontally when its width is not ;; fixed, it is at least `split-width-threshold' columns wide @@ -847,11 +847,11 @@ (and (window--splittable-p window t) ;; Split window horizontally. (split-window window nil t)) - (and (with-selected-window window - (one-window-p 'nomini)) - ;; If WINDOW is the only window on its frame, attempt to - ;; split it vertically disregarding the current value of - ;; `split-height-threshold'. + (and (eq window (frame-root-window (window-frame window))) + (not (window-minibuffer-p window)) + ;; If WINDOW is the only window on its frame and not the + ;; minibuffer window, attempt to split it vertically + ;; disregarding the value of `split-height-threshold'. (let ((split-height-threshold 0)) (window--splittable-p window) (split-window window))))))) @@ -1013,7 +1013,7 @@ (setq frame-to-use (last-nonminibuffer-frame)) (window--frame-usable-p frame-to-use) (not (frame-parameter frame-to-use 'unsplittable)))) - ;; Attempt to split largest or most recently used window. + ;; Attempt to split largest or least recently used window. (setq window-to-use (or (window--try-to-split-window (get-largest-window frame-to-use t))