diff options
Diffstat (limited to 'lisp/wid-edit.el')
-rw-r--r-- | lisp/wid-edit.el | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el index 9dea809dc91..1d5cb3625f0 100644 --- a/lisp/wid-edit.el +++ b/lisp/wid-edit.el @@ -660,6 +660,16 @@ button is pressed or inactive, respectively. These are currently ignored." tag 'mouse-face widget-button-pressed-face))) (insert tag))) +(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) + (if (widget-event-point event) + (let* ((pos (widget-event-point event)) + (button (get-char-property pos 'button))) + (if button + (widget-button-click event))))) + ;;; Buttons. (defgroup widget-button nil @@ -3012,7 +3022,8 @@ It will read a file name from the minibuffer when invoked." (with-output-to-temp-buffer "*Completions*" (display-completion-list (sort (file-name-all-completions name-part directory) - 'string<))) + 'string<) + name-part)) (message "Making completion list...%s" "done"))))) (defun widget-file-prompt-value (widget prompt value unbound) @@ -3571,7 +3582,8 @@ example: (t (message "Making completion list...") (with-output-to-temp-buffer "*Completions*" - (display-completion-list (all-completions prefix list nil))) + (display-completion-list (all-completions prefix list nil) + prefix)) (message "Making completion list...done"))))) (defun widget-color-sample-face-get (widget) |