From 0037cba87b1ceefc3a65fa3c458aa685689e7e27 Mon Sep 17 00:00:00 2001 From: Chris Feng Date: Sun, 13 May 2018 23:57:36 +0800 Subject: [PATCH] Avoid hiding full screen X windows unexpectedly * exwm-layout.el (exwm-layout-set-fullscreen) (exwm-layout-unset-fullscreen): Set the Emacs window of a full screen X window dedicated to its buffer such that newly created X windows won't replace it. --- exwm-layout.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/exwm-layout.el b/exwm-layout.el index 7642598..5b7fe99 100644 --- a/exwm-layout.el +++ b/exwm-layout.el @@ -165,6 +165,7 @@ :window exwm--id :data (vector xcb:Atom:_NET_WM_STATE_FULLSCREEN))) (xcb:flush exwm--connection) + (set-window-dedicated-p (get-buffer-window) t) (cl-pushnew xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state) (exwm-input--release-keyboard exwm--id))) @@ -193,6 +194,7 @@ (xcb:+request exwm--connection (make-instance 'xcb:ewmh:set-_NET_WM_STATE :window exwm--id :data [])) (xcb:flush exwm--connection) + (set-window-dedicated-p (get-buffer-window) nil) (when exwm--keyboard-grabbed (exwm-input--grab-keyboard exwm--id))))