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

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

[elpa] externals/ace-window 77115afc1b: Get inherited faces in posframe.


From: ELPA Syncer
Subject: [elpa] externals/ace-window 77115afc1b: Get inherited faces in posframe.
Date: Sun, 11 Sep 2022 14:57:14 -0400 (EDT)

branch: externals/ace-window
commit 77115afc1b0b9f633084cf7479c767988106c196
Author: Vincent Zhang <seagle0128@gmail.com>
Commit: Vincent Zhang <seagle0128@gmail.com>

    Get inherited faces in posframe.
    
    Use the inherited colors in posframe.
    Cleanup compilation warnings.
    Close #227.
---
 ace-window-posframe.el | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/ace-window-posframe.el b/ace-window-posframe.el
index 99dd8a645f..8f3216977d 100644
--- a/ace-window-posframe.el
+++ b/ace-window-posframe.el
@@ -2,6 +2,14 @@
 
 ;; Copyright (C) 2015-2022  Free Software Foundation, Inc.
 
+(require 'ace-window)
+
+;; Suppress warnings
+(declare-function posframe-poshandler-window-center "ext:posframe")
+(declare-function posframe-show "ext:posframe")
+(declare-function posframe-hide "ext:posframe")
+(declare-function posframe-workable-p "ext:posframe")
+
 (defvar aw--posframe-frames '())
 
 (defvar aw-posframe-position-handler #'posframe-poshandler-window-center)
@@ -23,8 +31,8 @@
                      :string str
                      :poshandler aw-posframe-position-handler
                      :font (face-font 'aw-leading-char-face)
-                     :foreground-color (face-foreground 'aw-leading-char-face)
-                     :background-color (face-background 
'aw-leading-char-face)))))
+                     :foreground-color (face-foreground 'aw-leading-char-face 
nil t)
+                     :background-color (face-background 'aw-leading-char-face 
nil t)))))
 
 (defun aw--remove-leading-chars-posframe ()
   ;; Hide rather than delete. See aw--lead-overlay-posframe for why.
@@ -32,6 +40,9 @@
   (setq aw--posframe-frames nil))
 
 (defun ace-window-posframe-enable ()
+  (unless (and (require 'posframe nil t) (posframe-workable-p))
+    (error "Posframe is not workable"))
+
   (setq aw--lead-overlay-fn #'aw--lead-overlay-posframe)
   (setq aw--remove-leading-chars-fn #'aw--remove-leading-chars-posframe))
 
@@ -41,9 +52,10 @@
 
 ;;;###autoload
 (define-minor-mode ace-window-posframe-mode
-  ""
+  "Minor mode for showing the ace window key with child frames."
   :global t
   :require 'ace-window
+  :group 'ace-window
   :init-value nil
   (if ace-window-posframe-mode
       (ace-window-posframe-enable)



reply via email to

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