branch: externals/ivy-posframe
commit 4e95a485d81c2bc94cc404cc36a55002a024f54a
Author: conao3 <[email protected]>
Commit: conao3 <[email protected]>
fix display function declaration by display-functions-alist
---
ivy-posframe.el | 30 ++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/ivy-posframe.el b/ivy-posframe.el
index a2dc288..de67efb 100644
--- a/ivy-posframe.el
+++ b/ivy-posframe.el
@@ -226,27 +226,29 @@ This variable is useful for `ivy-posframe-read-action' .")
(funcall func str)
(ivy-posframe-display-at-frame-bottom-left str))))
-(defun ivy-posframe-display-at-window-center (str)
- (ivy-posframe--display str #'posframe-poshandler-window-center))
-
-(defun ivy-posframe-display-at-frame-center (str)
- (ivy-posframe--display str #'posframe-poshandler-frame-center))
-
-(defun ivy-posframe-display-at-window-bottom-left (str)
- (ivy-posframe--display str #'posframe-poshandler-window-bottom-left-corner))
-
-(defun ivy-posframe-display-at-frame-bottom-left (str)
- (ivy-posframe--display str #'posframe-poshandler-frame-bottom-left-corner))
+(defvar ivy-posframe-display-functions-alist
+ '((window-center . window-center)
+ (frame-center . frame-center)
+ (window-bottom-left . window-bottom-left-corner)
+ (frame-bottom-left . frame-bottom-left-corner)
+ (point . point-bottom-left-corner)))
+
+(eval
+ `(progn
+ ,@(mapcar
+ (lambda (elm)
+ `(defun ,(intern (format "ivy-posframe-display-at-%s" (car elm)))
(str)
+ ,(format "Display STR via `posframe' at %s." (car elm))
+ (ivy-posframe--display str #',(intern (format
"posframe-poshandler-%s" (cdr elm))))))
+ ivy-posframe-display-functions-alist)))
(defun ivy-posframe-display-at-frame-bottom-window-center (str)
+ "Display STR via `posframe' at frame-bottom-window-center."
(ivy-posframe--display
str (lambda (info)
(cons (car (posframe-poshandler-window-center info))
(cdr (posframe-poshandler-frame-bottom-left-corner info))))))
-(defun ivy-posframe-display-at-point (str)
- (ivy-posframe--display str #'posframe-poshandler-point-bottom-left-corner))
-
(defun ivy-posframe-cleanup ()
"Cleanup ivy's posframe."
(when (posframe-workable-p)