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

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

[nongnu] elpa/eglot-inactive-regions b0ade8c12e 21/66: Handle face list


From: ELPA Syncer
Subject: [nongnu] elpa/eglot-inactive-regions b0ade8c12e 21/66: Handle face list properties
Date: Fri, 6 Dec 2024 06:59:53 -0500 (EST)

branch: elpa/eglot-inactive-regions
commit b0ade8c12ef8466f93317c3d86669c6180734057
Author: Filippo Argiolas <filippo.argiolas@gmail.com>
Commit: Filippo Argiolas <filippo.argiolas@gmail.com>

    Handle face list properties
    
    Still looking into this, sometimes get-text-property can return a list
    of faces (e.g. when they are added with add-face-text-property). Take
    the first one of the list when this happens.
    
    So far with C modes I only saw it with #ifndef that has both
    font-lock-preprocessor-face and font-lock-negation-char-face in the n
    letter.
---
 clangd-inactive-regions.el | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/clangd-inactive-regions.el b/clangd-inactive-regions.el
index 6ad6c238f5..1ec86f0e0a 100644
--- a/clangd-inactive-regions.el
+++ b/clangd-inactive-regions.el
@@ -129,8 +129,11 @@ Allowed methods:
   (font-lock-flush))
 
 (defun clangd-inactive-regions--get-face (pos)
-  (or (get-text-property pos 'face)
-      'default))
+  (let ((face-prop
+         (or (get-text-property pos 'face) 'default)))
+    (if (listp face-prop)
+        (car face-prop)
+      face-prop)))
 
 (defun clangd-inactive-regions--make-darken-face (parent-face)
   "Return a new face from PARENT-FACE blending background and



reply via email to

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