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

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

[elpa] externals/ivy-posframe 7e33255 134/195: not use macro, write all


From: Feng Shu
Subject: [elpa] externals/ivy-posframe 7e33255 134/195: not use macro, write all form
Date: Sat, 3 Oct 2020 07:12:00 -0400 (EDT)

branch: externals/ivy-posframe
commit 7e33255f250eb10edf26c4bb5400af7d14c02a0d
Author: conao3 <conao3@gmail.com>
Commit: conao3 <conao3@gmail.com>

    not use macro, write all form
---
 ivy-posframe.el | 45 +++++++++++++++++++++++----------------------
 1 file changed, 23 insertions(+), 22 deletions(-)

diff --git a/ivy-posframe.el b/ivy-posframe.el
index e534a7d..5d75fe6 100644
--- a/ivy-posframe.el
+++ b/ivy-posframe.el
@@ -271,29 +271,35 @@ This variable is useful for `ivy-posframe-read-action' .")
         (funcall func str)
       (ivy-posframe-display-at-frame-bottom-left str))))
 
-(defvar ivy-posframe-display-function-alist
-  '((window-center      . posframe-poshandler-window-center)
-    (frame-center       . posframe-poshandler-frame-center)
-    (window-bottom-left . posframe-poshandler-window-bottom-left-corner)
-    (frame-bottom-left  . posframe-poshandler-frame-bottom-left-corner)
-    (point              . posframe-poshandler-point-bottom-left-corner)))
-
-(defmacro ivy-posframe-define-display-function (pair)
-  "Define display-function for ivy-posframe."
-  `(defun ,(intern (format "ivy-posframe-display-at-%s" (car pair))) (str)
-     ,(format "Display STR via `posframe' at %s." (car pair))
-     (ivy-posframe--display str #',(cdr pair))))
-
-(mapc (lambda (elm) (ivy-posframe-define-display-function elm))
-      ivy-posframe-display-function-alist)
+(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))
 
 (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))
+
+(defvar ivy-posframe-display-function-list '(ivy-posframe-display
+                                             
ivy-posframe-display-at-window-center
+                                             
ivy-posframe-display-at-frame-center
+                                             
ivy-posframe-display-at-window-bottom-left
+                                             
ivy-posframe-display-at-frame-bottom-left
+                                             
ivy-posframe-display-at-frame-bottom-window-center
+                                             ivy-posframe-display-at-point))
+
 (defun ivy-posframe-cleanup ()
   "Cleanup ivy's posframe."
   (when (posframe-workable-p)
@@ -450,12 +456,7 @@ selection, non-nil otherwise."
 ;;; Variables
 
 (defvar ivy-posframe-display-function-list
-  (append
-   ivy-posframe-additional-display-functions
-   (mapcar (lambda (elm) (intern (format "ivy-posframe-display-at-%s" (car 
elm))))
-           ivy-posframe-display-function-alist)
-   '(ivy-posframe-display
-     ivy-posframe-display-at-frame-bottom-window-center)))
+  (append ivy-posframe-additional-display-functions 
ivy-posframe-display-function-list))
 
 (defvar ivy-posframe-advice-alist
   '((ivy--minibuffer-setup      . ivy-posframe--minibuffer-setup)



reply via email to

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