[clfswm-cvs] r382 - clfswm/src
Philippe Brochard
pbrochard at common-lisp.net
Wed Nov 10 23:29:01 UTC 2010
Author: pbrochard
Date: Wed Nov 10 18:29:00 2010
New Revision: 382
Log:
src/clfswm-util.lisp (mouse-click-to-focus-generic): Do not focus the parent child when the current root is a window.
Modified:
clfswm/src/clfswm-internal.lisp
clfswm/src/clfswm-util.lisp
Modified: clfswm/src/clfswm-internal.lisp
==============================================================================
--- clfswm/src/clfswm-internal.lisp (original)
+++ clfswm/src/clfswm-internal.lisp Wed Nov 10 18:29:00 2010
@@ -809,7 +809,9 @@
For window: set current child to window or its parent according to window-parent"
(let ((new-focus (focus-child-rec child parent))
(new-current-child (set-current-child child parent window-parent))
- (new-root (set-current-root parent)))
+ (new-root (if window-parent
+ (set-current-root parent)
+ child)))
(or new-focus new-current-child new-root)))
Modified: clfswm/src/clfswm-util.lisp
==============================================================================
--- clfswm/src/clfswm-util.lisp (original)
+++ clfswm/src/clfswm-util.lisp Wed Nov 10 18:29:00 2010
@@ -556,7 +556,9 @@
(setf parent (find-parent-frame child)))))
(when (equal (type-of child) 'frame)
(funcall mouse-fn child parent root-x root-y))
- (when (and child parent (focus-all-children child parent))
+ (when (and child parent (focus-all-children child parent
+ (not (and (child-equal-p *current-child* *current-root*)
+ (xlib:window-p *current-root*)))))
(when (show-all-children *current-root*)
(setf to-replay nil))))
(if to-replay
More information about the clfswm-cvs
mailing list