summaryrefslogtreecommitdiff
path: root/lisp/wid-edit.el
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2005-10-17 23:39:24 +0000
committerChong Yidong <cyd@stupidchicken.com>2005-10-17 23:39:24 +0000
commit185d1922fbf5f92cc444f0c29ba6b05d980f7aff (patch)
tree1a4b8219d0afd637b8196a39f999cbc3a946d52e /lisp/wid-edit.el
parentffda926c9c904a38d7c5674e141bd026adceee02 (diff)
downloademacs-185d1922fbf5f92cc444f0c29ba6b05d980f7aff.tar.gz
* cus-edit.el (Custom-move-and-invoke): Delete function.
(custom-mode-map): Remove Custom-move-and-invoke binding. * wid-edit.el (widget-move-and-invoke): New function. (widget-keymap): Bind mouse-1 to it.
Diffstat (limited to 'lisp/wid-edit.el')
-rw-r--r--lisp/wid-edit.el9
1 files changed, 9 insertions, 0 deletions
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 8335a202120..ce186d1b68f 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -849,6 +849,7 @@ button end points."
(define-key map "\t" 'widget-forward)
(define-key map [(shift tab)] 'widget-backward)
(define-key map [backtab] 'widget-backward)
+ (define-key map [mouse-1] 'widget-move-and-invoke)
(define-key map [down-mouse-2] 'widget-button-click)
(define-key map "\C-m" 'widget-button-press)
map)
@@ -901,6 +902,14 @@ Recommended as a parent keymap for modes using widgets.")
;; backward-compatibility alias
(put 'widget-button-pressed-face 'face-alias 'widget-button-pressed)
+(defun widget-move-and-invoke (event)
+ "Move to where you click, and if it is an active field, invoke it."
+ (interactive "e")
+ (mouse-set-point event)
+ (let ((pos (widget-event-point event)))
+ (if (and pos (get-char-property pos 'button))
+ (widget-button-click event))))
+
(defun widget-button-click (event)
"Invoke the button that the mouse is pointing at."
(interactive "e")