From: Philippe Brochard Date: Tue, 16 Oct 2012 07:46:22 +0000 (+0200) Subject: Correctly Configure roots on monitor change X-Git-Tag: R-1212~22 X-Git-Url: https://repo.or.cz/w/clfswm.git/commitdiff_plain/fb5fe5fe1ca54228086486b67307cd13b029675f Correctly Configure roots on monitor change --- diff --git a/src/clfswm-internal.lisp b/src/clfswm-internal.lisp index a584867..81c5e7e 100644 --- a/src/clfswm-internal.lisp +++ b/src/clfswm-internal.lisp @@ -866,6 +866,9 @@ XINERAMA version 1.1 opcode: 150 (define-as-root frame x y w h))))) +(defun finish-configuring-root () + (ensure-at-least-one-root) + (setf (current-child) (first (frame-child (first (frame-child *root-frame*)))))) diff --git a/src/clfswm.lisp b/src/clfswm.lisp index c833ce2..7ae2f35 100644 --- a/src/clfswm.lisp +++ b/src/clfswm.lisp @@ -153,6 +153,7 @@ (define-handler main-mode :configure-notify (window) (when (child-equal-p window *root*) (place-frames-from-xinerama-infos) + (finish-configuring-root) (show-all-children) (call-hook *root-size-change*))) @@ -199,8 +200,7 @@ (defun default-init-hook () (place-frames-from-xinerama-infos) - (ensure-at-least-one-root) - (setf (current-child) (first (frame-child (first (frame-child *root-frame*)))))) + (finish-configuring-root)) (defun init-display ()