Fix fullscreen states

* exwm-layout.el (exwm-layout-set-fullscreen,
exwm-layout-unset-fullscreen): Use `exwm--id' for interactive use.
(exwm-layout-unset-fullscreen): Mandatorily clear fullscreen states.
This commit is contained in:
Chris Feng 2020-06-14 00:00:00 +00:00
parent 9f28621277
commit edb930005b

View file

@ -205,7 +205,7 @@
:border-width 0 :border-width 0
:stack-mode xcb:StackMode:Above)) :stack-mode xcb:StackMode:Above))
(cl-pushnew xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state) (cl-pushnew xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state)
(exwm-layout--set-ewmh-state id) (exwm-layout--set-ewmh-state exwm--id)
(xcb:flush exwm--connection) (xcb:flush exwm--connection)
(set-window-dedicated-p (get-buffer-window) t) (set-window-dedicated-p (get-buffer-window) t)
(exwm-input--release-keyboard exwm--id))) (exwm-input--release-keyboard exwm--id)))
@ -233,7 +233,9 @@
(let ((window (get-buffer-window nil t))) (let ((window (get-buffer-window nil t)))
(when window (when window
(exwm-layout--show exwm--id window)))) (exwm-layout--show exwm--id window))))
(exwm-layout--set-ewmh-state id) (setq exwm--ewmh-state
(delq xcb:Atom:_NET_WM_STATE_FULLSCREEN exwm--ewmh-state))
(exwm-layout--set-ewmh-state exwm--id)
(xcb:flush exwm--connection) (xcb:flush exwm--connection)
(set-window-dedicated-p (get-buffer-window) nil) (set-window-dedicated-p (get-buffer-window) nil)
(when (eq 'line-mode exwm--selected-input-mode) (when (eq 'line-mode exwm--selected-input-mode)