emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/corfu 9e854d2a97 1/6: corfu-popupinfo: Do not setup key


From: ELPA Syncer
Subject: [elpa] externals/corfu 9e854d2a97 1/6: corfu-popupinfo: Do not setup keymap if completion-in-region-mode disabled
Date: Mon, 21 Nov 2022 16:57:34 -0500 (EST)

branch: externals/corfu
commit 9e854d2a979445b11d6454d440bb886ebfd8ff0a
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>

    corfu-popupinfo: Do not setup keymap if completion-in-region-mode disabled
    
    Fix #254
---
 extensions/corfu-popupinfo.el | 47 ++++++++++++++++++++++---------------------
 1 file changed, 24 insertions(+), 23 deletions(-)

diff --git a/extensions/corfu-popupinfo.el b/extensions/corfu-popupinfo.el
index 3890f45dd6..6e5aa33761 100644
--- a/extensions/corfu-popupinfo.el
+++ b/extensions/corfu-popupinfo.el
@@ -434,29 +434,30 @@ not be displayed until this command is called again, even 
if
 
 (defun corfu-popupinfo--exhibit (&rest _)
   "Update the info popup automatically."
-  (add-to-list 'minor-mode-overriding-map-alist
-               `(,#'corfu-popupinfo-mode . ,corfu-popupinfo-map))
-  (if (and (>= corfu--index 0) (corfu-popupinfo--visible-p corfu--frame))
-      (when-let* ((delay (if (consp corfu-popupinfo-delay)
-                             (funcall (if (corfu-popupinfo--visible-p) #'cdr 
#'car)
-                                      corfu-popupinfo-delay)
-                           corfu-popupinfo-delay))
-                  (corfu-popupinfo--toggle))
-        (when corfu-popupinfo--timer
-          (cancel-timer corfu-popupinfo--timer)
-          (setq corfu-popupinfo--timer nil))
-        (let ((candidate (nth corfu--index corfu--candidates)))
-          (if (or (eq delay t) (<= delay 0)
-                  (equal candidate corfu-popupinfo--candidate))
-              (corfu-popupinfo--show candidate)
-            (cond
-             (corfu-popupinfo-hide
-              (corfu-popupinfo--hide))
-             (corfu-popupinfo--candidate
-              (corfu-popupinfo--show corfu-popupinfo--candidate)))
-            (setq corfu-popupinfo--timer
-                  (run-at-time delay nil #'corfu-popupinfo--show candidate)))))
-    (corfu-popupinfo--hide)))
+  (when completion-in-region-mode
+    (setf (alist-get #'corfu-popupinfo-mode minor-mode-overriding-map-alist)
+          corfu-popupinfo-map)
+    (if (and (>= corfu--index 0) (corfu-popupinfo--visible-p corfu--frame))
+        (when-let* ((delay (if (consp corfu-popupinfo-delay)
+                               (funcall (if (corfu-popupinfo--visible-p) #'cdr 
#'car)
+                                        corfu-popupinfo-delay)
+                             corfu-popupinfo-delay))
+                    (corfu-popupinfo--toggle))
+          (when corfu-popupinfo--timer
+            (cancel-timer corfu-popupinfo--timer)
+            (setq corfu-popupinfo--timer nil))
+          (let ((candidate (nth corfu--index corfu--candidates)))
+            (if (or (eq delay t) (<= delay 0)
+                    (equal candidate corfu-popupinfo--candidate))
+                (corfu-popupinfo--show candidate)
+              (cond
+               (corfu-popupinfo-hide
+                (corfu-popupinfo--hide))
+               (corfu-popupinfo--candidate
+                (corfu-popupinfo--show corfu-popupinfo--candidate)))
+              (setq corfu-popupinfo--timer
+                    (run-at-time delay nil #'corfu-popupinfo--show 
candidate)))))
+      (corfu-popupinfo--hide))))
 
 (defun corfu-popupinfo--teardown ()
   "Teardown the info popup state."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]