]> git.eshelyaron.com Git - emacs.git/commitdiff
Make face names clickable in Customize buffers
authorOleh Krehel <ohwoeowho@gmail.com>
Thu, 17 Sep 2020 18:43:34 +0000 (20:43 +0200)
committerLars Ingebrigtsen <larsi@gnus.org>
Thu, 17 Sep 2020 18:43:40 +0000 (20:43 +0200)
* lisp/cus-edit.el (custom-face-value-create): Make the face name
a clickable button (bug#20664).

lisp/cus-edit.el

index 6d0ec5d14868e5d256f70dcbc852dde244307209..9626b3cf810698b5cb05765dabd7b33367e45795 100644 (file)
@@ -3560,19 +3560,20 @@ the present value is saved to its :shown-value property instead."
          (widget-put widget :buttons buttons))
 
       ;; Draw an ordinary `custom-face' widget
-      (let ((opoint (point)))
-       ;; Visibility indicator.
-       (push (widget-create-child-and-convert
-              widget 'custom-visibility
-              :help-echo "Hide or show this face."
-              :on "Hide" :off "Show"
-              :on-glyph "down" :off-glyph "right"
-              :action 'custom-toggle-hide-face
-              (not hiddenp))
-             buttons)
-       ;; Face name (tag).
-       (insert " " tag)
-       (widget-specify-sample widget opoint (point)))
+      ;; Visibility indicator.
+      (push (widget-create-child-and-convert
+             widget 'custom-visibility
+             :help-echo "Hide or show this face."
+             :on "Hide" :off "Show"
+             :on-glyph "down" :off-glyph "right"
+             :action 'custom-toggle-hide-face
+             (not hiddenp))
+            buttons)
+      ;; Face name (tag).
+      (insert " ")
+      (insert-text-button tag
+                          'action (lambda (&rest _x)
+                                    (find-face-definition symbol)))
       (insert
        (cond ((eq custom-buffer-style 'face) " ")
             ((string-match-p "face\\'" tag)   ":")