summaryrefslogtreecommitdiff
path: root/core.lisp
diff options
context:
space:
mode:
authorJonathan Moore Liles <wantingwaiting@users.sf.net>2007-10-16 21:33:38 -0500
committerJonathan Moore Liles <wantingwaiting@users.sf.net>2008-01-07 16:02:38 -0600
commit1f530fa1712a83f05bc0683048b08655ccf694ba (patch)
tree8a0489335796a66dc6af53bf8b743be57b3819e5 /core.lisp
parenteca75fdf7b35440594db88c770c3b4b77b7ec6b6 (diff)
Avoid sync'ing windows during window-hiding interactive resize.
Speed is the whole point of *resize-hides-windows*, so don't bother maximizing invisible windows.
Diffstat (limited to 'core.lisp')
-rw-r--r--core.lisp13
1 files changed, 7 insertions, 6 deletions
diff --git a/core.lisp b/core.lisp
index c3d96dd..147f3bd 100644
--- a/core.lisp
+++ b/core.lisp
@@ -1933,12 +1933,13 @@ either :width or :height"
(expand-tree to-shrink (- amount) (ecase dim
(:width (if lastp :right :left))
(:height (if lastp :bottom :top))))
- (tree-iterate to-resize
- (lambda (leaf)
- (sync-frame-windows group leaf)))
- (tree-iterate to-shrink
- (lambda (leaf)
- (sync-frame-windows group leaf))))))))
+ (unless (and *resize-hides-windows* (eq *top-map* *resize-map*))
+ (tree-iterate to-resize
+ (lambda (leaf)
+ (sync-frame-windows group leaf)))
+ (tree-iterate to-shrink
+ (lambda (leaf)
+ (sync-frame-windows group leaf)))))))))
(defun balance-frames (group tree)
"Resize all the children of tree to be of equal width or height