From b8ce20b4f3eac1228aef58b83a72a87ccdb819d0 Mon Sep 17 00:00:00 2001 From: Chris Feng Date: Mon, 19 Feb 2018 22:34:03 +0800 Subject: Support displaying floating X windows on all workspaces ; Setting _NET_WM_DESKTOP to 0xffffffff makes an X windows appearing ; on all desktops (EWMH). It's tricky to do it for tiling X windows ; so it's not implemented. * exwm-core.el (exwm--desktop): New buffer-local variable recording the value of _NET_WM_DESKTOP. * exwm-layout.el (exwm-layout--hide): Do not hide X windows with this property set to 0xffffffff. * exwm.el (exwm--update-desktop): New function for fetching the value of _NET_WM_DESKTOP and setting `exwm--desktop'. * exwm-manage.el (exwm-manage--manage-window): Use it. * exwm-workspace.el (exwm-workspace--set-desktop): Also update `exwm--desktop'. --- exwm-core.el | 1 + 1 file changed, 1 insertion(+) (limited to 'exwm-core.el') diff --git a/exwm-core.el b/exwm-core.el index 68ec53b03e4a..71498c9dc81f 100644 --- a/exwm-core.el +++ b/exwm-core.el @@ -139,6 +139,7 @@ least SECS seconds later." (defvar-local exwm--on-KeyPress ;KeyPress event handler #'exwm-input--on-KeyPress-line-mode) ;; Properties +(defvar-local exwm--desktop nil "_NET_WM_DESKTOP.") (defvar-local exwm-window-type nil "_NET_WM_WINDOW_TYPE.") (defvar-local exwm--geometry nil) (defvar-local exwm-class-name nil "Class name in WM_CLASS.") -- cgit 1.4.1