summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Mendler <mail@daniel-mendler.de>2022-11-19 16:17:47 +0100
committerDaniel Mendler <mail@daniel-mendler.de>2022-11-19 16:17:47 +0100
commit437e0ed806a71309c8155a7ef19bc1287f474087 (patch)
treeb6bd0a9178100299b2ae65a7ccdbfd9acbd2781e
parent9105f7b9743a99ca0c48cb94ba55bf3bc09bc8b9 (diff)
corfu-popupinfo: Fix auto popup for first candidate
-rw-r--r--extensions/corfu-popupinfo.el15
1 files changed, 10 insertions, 5 deletions
diff --git a/extensions/corfu-popupinfo.el b/extensions/corfu-popupinfo.el
index 6629ed8..bb2da24 100644
--- a/extensions/corfu-popupinfo.el
+++ b/extensions/corfu-popupinfo.el
@@ -363,9 +363,10 @@ If ARG is omitted or nil, scroll down by a near full screen."
"Set popup documentation getter FUN."
(setq corfu-popupinfo--function fun
corfu-popupinfo--candidate nil
- corfu-popupinfo--toggle t)
+ corfu-popupinfo--toggle nil)
(when-let (candidate (and (>= corfu--index 0)
(nth corfu--index corfu--candidates)))
+ (setq corfu-popupinfo--toggle t)
(corfu-popupinfo--show candidate)))
(defun corfu-popupinfo-documentation ()
@@ -385,9 +386,11 @@ When using this command to manually hide the info popup, it will
not be displayed until this command is called again, even if
`corfu-popupinfo-delay' is non-nil."
(interactive)
+ (setq corfu-popupinfo--toggle nil)
(if-let ((candidate (and (>= corfu--index 0)
(nth corfu--index corfu--candidates)))
- ((setq corfu-popupinfo--toggle (not (corfu-popupinfo--visible-p)))))
+ ((not (corfu-popupinfo--visible-p))))
+ (setq corfu-popupinfo--toggle t)
(corfu-popupinfo--show candidate)
(corfu-popupinfo--hide)))
@@ -408,9 +411,11 @@ not be displayed until this command is called again, even if
(if (or (eq delay t) (<= delay 0)
(equal candidate corfu-popupinfo--candidate))
(corfu-popupinfo--show candidate)
- (if corfu-popupinfo-hide
- (corfu-popupinfo--hide)
- (corfu-popupinfo--show corfu-popupinfo--candidate))
+ (cond
+ (corfu-popupinfo-hide
+ (corfu-popupinfo--hide))
+ (corfu-popupinfo--candidate
+ (corfu-popupinfo--show corfu-popupinfo--candidate)))
(setq corfu-popupinfo--auto-timer
(run-at-time delay nil #'corfu-popupinfo--show candidate)))))
(corfu-popupinfo--hide)))