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

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

[elpa] externals/ivy-posframe 061a125 030/195: Re-add ivy-posframe-style


From: Feng Shu
Subject: [elpa] externals/ivy-posframe 061a125 030/195: Re-add ivy-posframe-style for compatible
Date: Sat, 3 Oct 2020 07:11:39 -0400 (EDT)

branch: externals/ivy-posframe
commit 061a12550c5b7c75b345c4005c80b67436693608
Author: Feng Shu <tumashu@163.com>
Commit: Feng Shu <tumashu@163.com>

    Re-add ivy-posframe-style for compatible
---
 README.md       | 24 ++++++++++++------------
 ivy-posframe.el | 15 ++++++++++++---
 2 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/README.md b/README.md
index ba5e89c..296cb54 100644
--- a/README.md
+++ b/README.md
@@ -1,19 +1,19 @@
 
 # &#30446;&#24405;
 
-1.  [ivy-posframe README](#orgad72029)
-    1.  [What is ivy-posframe](#orgf3fce48)
-    2.  [Display functions](#org1420034)
-    3.  [How to enable ivy-posframe](#orgcd8666c)
-    4.  [How to custom your ivy-posframe style](#org7c1f241)
+1.  [ivy-posframe README](#orgcc900c2)
+    1.  [What is ivy-posframe](#org5f83be3)
+    2.  [Display functions](#org24f03db)
+    3.  [How to enable ivy-posframe](#orgcedf7a7)
+    4.  [How to custom your ivy-posframe style](#org7b3c825)
 
 
-<a id="orgad72029"></a>
+<a id="orgcc900c2"></a>
 
 # ivy-posframe README
 
 
-<a id="orgf3fce48"></a>
+<a id="org5f83be3"></a>
 
 ## What is ivy-posframe
 
@@ -23,7 +23,7 @@ to show its candidate menu.
 NOTE: ivy-posframe requires Emacs 26
 
 
-<a id="org1420034"></a>
+<a id="org24f03db"></a>
 
 ## Display functions
 
@@ -39,7 +39,7 @@ NOTE: ivy-posframe requires Emacs 26
     ![img](./snapshots/ivy-posframe-display-at-point.gif)
 
 
-<a id="orgcd8666c"></a>
+<a id="orgcedf7a7"></a>
 
 ## How to enable ivy-posframe
 
@@ -64,15 +64,15 @@ NOTE: ivy-posframe requires Emacs 26
         (push '(t . ivy-posframe-display) ivy-display-functions-alist)
 
 
-<a id="org7c1f241"></a>
+<a id="org7b3c825"></a>
 
 ## How to custom your ivy-posframe style
 
 The simplest way is:
 
     (defun ivy-posframe-display-at-XXX (str)
-      (ivy-posframe-display str 'your-own-poshandler-function))
-    (ivy-posframe-setup) ; This line is need.
+      (ivy-posframe--display str #'your-own-poshandler-function))
+    (ivy-posframe-setup) ; This line is needed.
 
 
 
diff --git a/ivy-posframe.el b/ivy-posframe.el
index 622ba41..9f2d8bf 100644
--- a/ivy-posframe.el
+++ b/ivy-posframe.el
@@ -76,8 +76,8 @@
 ;; The simplest way is:
 ;; ;; #+BEGIN_EXAMPLE
 ;; (defun ivy-posframe-display-at-XXX (str)
-;;   (ivy-posframe-display str 'your-own-poshandler-function))
-;; (ivy-posframe-setup) ; This line is need.
+;;   (ivy-posframe--display str #'your-own-poshandler-function))
+;; (ivy-posframe-setup) ; This line is needed.
 ;; ;; #+END_EXAMPLE
 
 ;;; Code:
@@ -91,6 +91,11 @@
   :group 'ivy
   :prefix "ivy-posframe")
 
+(defcustom ivy-posframe-style 'window-bottom-left
+  "The style of ivy-posframe."
+  :group 'ivy-posframe
+  :type 'string)
+
 (defcustom ivy-posframe-font nil
   "The font used by ivy-posframe.
 When nil, Using current frame's font as fallback."
@@ -128,7 +133,11 @@ When nil, Using current frame's font as fallback."
        :min-width 50))))
 
 (defun ivy-posframe-display (str)
-  (ivy-posframe--display str #'posframe-poshandler-frame-bottom-left-corner))
+  (let ((func (intern (format "ivy-posframe-display-at-%s"
+                              ivy-posframe-style))))
+    (if (functionp func)
+        (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))



reply via email to

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