branch: externals/transient
commit 714e34829698b4eb9b0699272392db79840c8800
Author: Jonas Bernoulli <[email protected]>
Commit: Jonas Bernoulli <[email protected]>
No longer always suspend when handle-switch-frame is called
---
lisp/transient.el | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/lisp/transient.el b/lisp/transient.el
index 22838d1f61..25c91dcb7f 100644
--- a/lisp/transient.el
+++ b/lisp/transient.el
@@ -1545,7 +1545,6 @@ to `transient-predicate-map'. Also see
`transient-base-map'.")
(defvar transient-predicate-map
(let ((map (make-sparse-keymap)))
- (define-key map [handle-switch-frame] #'transient--do-suspend)
(define-key map [transient-suspend] #'transient--do-suspend)
(define-key map [transient-help] #'transient--do-stay)
(define-key map [transient-set-level] #'transient--do-stay)
@@ -1647,6 +1646,9 @@ of the corresponding object.")
(defun transient--make-predicate-map ()
(let ((map (make-sparse-keymap)))
(set-keymap-parent map transient-predicate-map)
+ (when (memq (oref transient--prefix transient-non-suffix)
+ '(nil transient--do-warn transient--do-noop))
+ (define-key map [handle-switch-frame] #'transient--do-suspend))
(dolist (obj transient--suffixes)
(let* ((cmd (oref obj command))
(sub-prefix (and (symbolp cmd) (get cmd 'transient--prefix) t))