emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master 2fcdb95: * lisp/wid-edit.el (widget-color--choose-a


From: Stefan Monnier
Subject: [Emacs-diffs] master 2fcdb95: * lisp/wid-edit.el (widget-color--choose-action): Use a closure
Date: Fri, 7 Jul 2017 17:02:32 -0400 (EDT)

branch: master
commit 2fcdb953634909703dbbc99269782c09df971505
Author: Stefan Monnier <address@hidden>
Commit: Stefan Monnier <address@hidden>

    * lisp/wid-edit.el (widget-color--choose-action): Use a closure
---
 lisp/wid-edit.el | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index ca402c1..a1b8ed2 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -3694,15 +3694,17 @@ example:
 (defun widget-color--choose-action (widget &optional _event)
   (list-colors-display
    nil nil
-   `(lambda (color)
-      (when (buffer-live-p ,(current-buffer))
-       (widget-value-set ',(widget-get widget :parent) color)
-       (let* ((buf (get-buffer "*Colors*"))
-              (win (get-buffer-window buf 0)))
-         (if win
-             (quit-window nil win)
-           (bury-buffer buf)))
-       (pop-to-buffer ,(current-buffer))))))
+   (let ((cbuf ,(current-buffer))
+         (wp (widget-get widget :parent)))
+     (lambda (color)
+       (when (buffer-live-p cbuf)
+        (widget-value-set wp color)
+        (let* ((buf (get-buffer "*Colors*"))
+               (win (get-buffer-window buf 0)))
+          (if win
+              (quit-window nil win)
+            (bury-buffer buf)))
+        (pop-to-buffer cbuf))))))
 
 (defun widget-color-sample-face-get (widget)
   (let* ((value (condition-case nil



reply via email to

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