Check buffer mode in exwm-reset
This should prevent users from misoperation.
This commit is contained in:
parent
3fb90b9eaa
commit
1e36a22b3f
2 changed files with 5 additions and 8 deletions
|
@ -111,11 +111,7 @@ The optional FORCE option is for internal use only."
|
|||
(unless (and (<= 0 index) (< index exwm-workspace-number))
|
||||
(user-error "[EXWM] Workspace index out of range: %d" index))
|
||||
(when (or force (/= exwm-workspace-current-index index))
|
||||
;; Exit fullscreen mode
|
||||
(with-current-buffer (window-buffer)
|
||||
(when (and (eq major-mode 'exwm-mode) exwm--fullscreen)
|
||||
(exwm-layout-unset-fullscreen)
|
||||
(exwm-input-grab-keyboard)))
|
||||
(exwm-reset) ;exit full screen
|
||||
(let ((frame (elt exwm-workspace--list index)))
|
||||
(setq exwm-workspace--current frame
|
||||
exwm-workspace-current-index index)
|
||||
|
|
7
exwm.el
7
exwm.el
|
@ -195,9 +195,10 @@
|
|||
(defun exwm-reset ()
|
||||
"Reset window to standard state: non-fullscreen, line-mode."
|
||||
(interactive)
|
||||
(with-current-buffer (window-buffer (selected-window))
|
||||
(when exwm--fullscreen (exwm-layout-unset-fullscreen))
|
||||
(exwm-input-grab-keyboard)))
|
||||
(with-current-buffer (window-buffer)
|
||||
(when (and (eq major-mode 'exwm-mode) exwm--fullscreen)
|
||||
(exwm-layout-unset-fullscreen)
|
||||
(exwm-input-grab-keyboard))))
|
||||
|
||||
(defmacro exwm--with-current-id (id &rest body)
|
||||
"Evaluate BODY in the context of the buffer corresponding to window ID."
|
||||
|
|
Loading…
Reference in a new issue