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))

Reply via email to