Filter dead buffers from persp-mode workspaces

Fix #4196
Fix #1525
This commit is contained in:
Henrik Lissner 2020-11-01 23:38:42 -05:00
parent 7ec623593e
commit 7d603185e1
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -142,6 +142,14 @@ stored in `persp-save-dir'.")
(cadr prev-buffers)
head)))
;; HACK Fixes #4196, #1525: selecting deleted buffer error when quitting Emacs
;; or on some buffer listing ops.
(defadvice! +workspaces-remove-dead-buffers-a (persp)
:before #'persp-buffers-to-savelist
(when (persp-p persp)
(setf (persp-buffers persp)
(cl-delete-if-not #'persp-get-buffer-or-null (persp-buffers persp)))))
;; Delete the current workspace if closing the last open window
(define-key! persp-mode-map
[remap delete-window] #'+workspace/close-window-or-workspace