diff options
author | Chris Feng <chris.w.feng@gmail.com> | 2018-10-21T00·00+0000 |
---|---|---|
committer | Chris Feng <chris.w.feng@gmail.com> | 2018-10-21T00·00+0000 |
commit | 01b0b54c04d043c47184019c75cc668da2427aa8 (patch) | |
tree | a13319f9bf5915c79274f73e4b49b7a4e857712a | |
parent | 449cd9d37910f55ed25e293c4b67223bb7ee7eef (diff) |
Fix single workspace invisible problem with Xephyr
* exwm-workspace.el (exwm-workspace-switch): On startup EXWM switches to workspace 0 by force so the rest code can not assume the frames before and after a switch different.
-rw-r--r-- | exwm-workspace.el | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/exwm-workspace.el b/exwm-workspace.el index 8a59c36b54db..383bf530b8a6 100644 --- a/exwm-workspace.el +++ b/exwm-workspace.el @@ -553,8 +553,9 @@ for internal use only." (exwm-workspace--set-active frame t)) ((equal output-old output-new) (exwm-workspace--set-active frame t) - (exwm-workspace--set-active old-frame nil) - (setq workspaces-to-hide (list old-frame))) + (unless (eq frame old-frame) + (exwm-workspace--set-active old-frame nil) + (setq workspaces-to-hide (list old-frame)))) (active-new) (t (dolist (w exwm-workspace--list) @@ -626,7 +627,8 @@ for internal use only." :dst-x (/ (frame-pixel-width frame) 2) :dst-y (/ (frame-pixel-height frame) 2))) (xcb:flush exwm--connection)))) - (when (frame-live-p old-frame) + (when (and (not (eq frame old-frame)) + (frame-live-p old-frame)) (with-selected-frame old-frame (run-hooks 'focus-out-hook))) (run-hooks 'focus-in-hook) |