emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/exwm 5f6b866 1/3: Refresh layout after activating/deact


From: Chris Feng
Subject: [elpa] externals/exwm 5f6b866 1/3: Refresh layout after activating/deactivating workspaces
Date: Sun, 2 Sep 2018 06:28:43 -0400 (EDT)

branch: externals/exwm
commit 5f6b866cfed7214caabd5f5dd0f952cce93a307c
Author: Adrián Medraño Calvo <address@hidden>
Commit: Adrián Medraño Calvo <address@hidden>

    Refresh layout after activating/deactivating workspaces
    
    * exwm-workspace.el (exwm-workspace--set-active): Refresh layout
    after activating or deactivating workspaces.
    
    * exwm-layout.el (exwm-layout--refresh-workspace): Hide X windows on
    inactive workspaces.
---
 exwm-layout.el    | 7 ++++---
 exwm-workspace.el | 5 +++--
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/exwm-layout.el b/exwm-layout.el
index 09a3498..56faadd 100644
--- a/exwm-layout.el
+++ b/exwm-layout.el
@@ -320,9 +320,10 @@ selected by `other-buffer'."
                   (exwm-layout--hide exwm--id))
               (let ((window (car windows)))
                 (if (eq frame exwm--frame)
-                    (when (exwm-workspace--active-p frame)
-                      ;; Show it if `frame' is active.
-                      (exwm-layout--show exwm--id window))
+                    ;; Show it if `frame' is active, hide otherwise.
+                    (if (exwm-workspace--active-p frame)
+                        (exwm-layout--show exwm--id window)
+                      (exwm-layout--hide exwm--id))
                   ;; It was last shown in other workspace; move it here.
                   (exwm-workspace-move-window frame exwm--id))
                 ;; Vacate any other windows (in any workspace) showing this
diff --git a/exwm-workspace.el b/exwm-workspace.el
index bcfffff..4d82ae5 100644
--- a/exwm-workspace.el
+++ b/exwm-workspace.el
@@ -379,8 +379,9 @@ NIL if FRAME is not a workspace"
   (set-frame-parameter frame 'exwm-active active)
   (if active
       (exwm-workspace--set-fullscreen frame)
-    (exwm--set-geometry (frame-parameter frame 'exwm-container) nil nil 1 1)
-    (xcb:flush exwm--connection)))
+    (exwm--set-geometry (frame-parameter frame 'exwm-container) nil nil 1 1))
+  (exwm-layout--refresh frame)
+  (xcb:flush exwm--connection))
 
 (defun exwm-workspace--active-p (frame)
   "Return non-nil if FRAME is active"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]