revert: persp-mode

Bad-ptr/persp-mode.el@82680795b3 -> Bad-ptr/persp-mode.el@40e9993a97

persp-mode introduced some breaking API changes in a recent refactoring,
which have caused issues that are difficult to opt out of, even by
repinning it to an older commit. Until persp-mode sorts things out, I
simply revert it back to a point before all the changes.

Revert: c64ca09ed2
Revert: 751ac6134b
Revert: 6d5e004b87
Amend: a1121acc94
Fix: #8455
Close: #8474
Ref: #8470
This commit is contained in:
Henrik Lissner
2025-09-01 01:00:08 +02:00
parent a1c307b441
commit b2e4e8e27c
4 changed files with 4 additions and 13 deletions

View File

@@ -29,14 +29,6 @@ This must be set before `treemacs' has loaded.")
;; Don't follow the cursor (it's more disruptive/jarring than helpful as a default)
(treemacs-follow-mode -1)
;; HACK: persp-mode changed the signature for `persp-activated-functions', but
;; treemacs hasn't updated its usage yet.
;; REVIEW: PR upstream
(remove-hook 'persp-activated-functions #'treemacs--remove-treemacs-window-in-new-frames)
(add-hook! 'persp-activated-functions
(defun +treemacs--remove-treemacs-window-in-new-frames-h (type &rest _)
(treemacs--remove-treemacs-window-in-new-frames type)))
(set-popup-rule! "^ ?\\*Treemacs" :ignore t)
(when +treemacs-git-mode
;; If they aren't supported, fall back to simpler methods

View File

@@ -155,7 +155,8 @@ Otherwise return t on success, nil otherwise."
(+popup--inhibit-transient t))
(persp-delete-other-windows))
(switch-to-buffer (doom-fallback-buffer))
(setf (persp-window-conf persp) (persp-window-state-get)))
(setf (persp-window-conf persp)
(funcall persp-window-state-get-function (selected-frame))))
persp))
;;;###autoload

View File

@@ -212,9 +212,7 @@ stored in `persp-save-dir'.")
(advice-add #'persp-asave-on-exit :around #'+workspaces-autosave-real-buffers-a)
;; Fix #1973: visual selection surviving workspace changes
(add-hook! 'persp-before-deactivate-functions
(defun +workspaces-disable-mark-after-switch-h (&rest _)
(deactivate-mark)))
(add-hook 'persp-before-deactivate-functions #'deactivate-mark)
;; Fix #1017: stop session persistence from restoring a broken posframe
(after! posframe

View File

@@ -1,4 +1,4 @@
;; -*- no-byte-compile: t; -*-
;;; ui/workspaces/packages.el
(package! persp-mode :pin "82680795b3dbb9f9fb023b1754902f38519d9875")
(package! persp-mode :pin "40e9993a9711cba5fb56dfec81a507fabeba9668")