diff --git a/src/manager.scm b/src/manager.scm index 012bed6..2871c89 100644 --- a/src/manager.scm +++ b/src/manager.scm @@ -158,6 +158,7 @@ (list 'init-client client maybe-rect)) (send internal-out-channel (list 'fit-client client)) ;; sync ?? + (set-wm-state! dpy window (wm-state normal) none) (map-window dpy window) (send internal-out-channel (list 'update-client-state client)))) @@ -412,7 +413,11 @@ (mdisplay "manager " (wm:type wm) " reparented client\n") (wm-deinit-client wm client) (exit 'reparent)))) - ;; TODO: withdrawn-state etc. unmap-event ... + ((unmap-event? xevent) + ;; might be the transition to withdrawn-state, wm-state + ;; change by root-manager + (wm-deinit-client wm client) + (exit 'unmap)) ((destroy-window-event? xevent) (mdisplay "destroy-window-event client " wm " " client "\n") (if (eq? (client:window client) (destroy-window-event-event xevent))