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

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

[elpa] externals/ivy-posframe a8a304b: * ivy-posframe.el (ivy-posframe-r


From: ELPA Syncer
Subject: [elpa] externals/ivy-posframe a8a304b: * ivy-posframe.el (ivy-posframe-refposhandler-default): use exwm info to get ref position.
Date: Fri, 9 Apr 2021 00:57:07 -0400 (EDT)

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

    * ivy-posframe.el (ivy-posframe-refposhandler-default): use exwm info to 
get ref position.
---
 ivy-posframe.el | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/ivy-posframe.el b/ivy-posframe.el
index 114315e..67b07b3 100644
--- a/ivy-posframe.el
+++ b/ivy-posframe.el
@@ -245,7 +245,10 @@ This variable is useful for `ivy-posframe-read-action' .")
 ;; Fix warn
 (defvar emacs-basic-display)
 (defvar ivy--display-function)
+
 (defvar exwm--connection)
+(defvar exwm-workspace--workareas)
+(defvar  exwm-workspace-current-index)
 
 (defun ivy-posframe-refposhandler-default (&optional frame)
   "The default posframe refposhandler used by ivy-posframe."
@@ -253,10 +256,15 @@ This variable is useful for `ivy-posframe-read-action' .")
    ;; EXWM environment
    (exwm--connection
     (or (ignore-errors
-          ;; Need user install xwininfo.
+          (let ((info (elt exwm-workspace--workareas
+                           exwm-workspace-current-index)))
+            (cons (elt info 0)
+                  (elt info 1))))
+        ;; Need user install xwininfo.
+        (ignore-errors
           (posframe-refposhandler-xwininfo frame))
-        ;; FIXME: maybe exwm provide some function,
-        ;; Which can get top-left of emacs.
+        ;; Fallback, this value will incorrect sometime, for example: user
+        ;; have panel.
         (cons 0 0)))
    (t nil)))
 



reply via email to

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