diff --git a/exwm-layout.el b/exwm-layout.el index ce53d32..603ae5e 100644 --- a/exwm-layout.el +++ b/exwm-layout.el @@ -35,6 +35,10 @@ "Non-nil to automatically iconify unused X windows when possible." :type 'boolean) +(defcustom exwm-layout-fullscreen-grab-keyboard t + "Non-nil to make X windows in fullscreen mode always intercept all key presses." + :type 'boolean) + (defcustom exwm-layout-show-all-buffers nil "Non-nil to allow switching to buffers on other workspaces." :type 'boolean) @@ -212,7 +216,8 @@ See variable `exwm-layout-auto-iconify'." (exwm-layout--set-ewmh-state exwm--id) (xcb:flush exwm--connection) (set-window-dedicated-p (get-buffer-window) t) - (exwm-input--release-keyboard exwm--id))) + (if exwm-layout-fullscreen-grab-keyboard + (exwm-input--release-keyboard exwm--id)))) (cl-defun exwm-layout-unset-fullscreen (&optional id) "Restore X window ID from fullscreen state."