Fix problems introduced/exposed by last commit
* exwm-workspace.el (exwm-workspace-switch, exwm-workspace--on-focus-in): Use handle-switch-frame instead of exwm-workspace--switch-count to filter out events. * exwm-workspace.el (exwm-workspace--init): Delay making workspaces fullscreen. * exwm-workspace.el (exwm-workspace-move-window): * exwm-floating.el (exwm-floating--set-floating): * exwm-layout.el (exwm-layout--refresh): `set-buffer-major-mode` does not accept buffer names.
This commit is contained in:
parent
e8bc51280d
commit
d05df51b05
4 changed files with 32 additions and 30 deletions
|
|
@ -215,18 +215,19 @@
|
|||
"Refresh layout."
|
||||
(let ((frame (selected-frame))
|
||||
(placeholder (or (get-buffer "*scratch*")
|
||||
(prog1 (get-buffer-create "*scratch*")
|
||||
(set-buffer-major-mode "*scratch*"))))
|
||||
(progn
|
||||
(set-buffer-major-mode
|
||||
(get-buffer-create "*scratch*"))
|
||||
(get-buffer "*scratch*"))))
|
||||
windows)
|
||||
(if (not (memq frame exwm-workspace--list))
|
||||
(if (frame-parameter frame 'exwm-window-id)
|
||||
;; Refresh a floating frame
|
||||
(progn
|
||||
(when (eq major-mode 'exwm-mode)
|
||||
(let ((window (frame-first-window frame)))
|
||||
(with-current-buffer (window-buffer window)
|
||||
(exwm--log "Refresh floating window #x%x" exwm--id)
|
||||
(exwm-layout--show exwm--id window)))))
|
||||
(when (eq major-mode 'exwm-mode)
|
||||
(let ((window (frame-first-window frame)))
|
||||
(with-current-buffer (window-buffer window)
|
||||
(exwm--log "Refresh floating window #x%x" exwm--id)
|
||||
(exwm-layout--show exwm--id window))))
|
||||
;; Other frames (e.g. terminal/graphical frame of emacsclient)
|
||||
;; We shall bury all `exwm-mode' buffers in this case
|
||||
(unless placeholder ;create the *scratch* buffer if it's killed
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue