+2007-10-19 Glenn Morris <rgm@gnu.org>
+
+ * bindings.el (mouse-minor-mode-menu)
+ (minor-mode-menu-from-indicator): Move to mouse.el.
+ * mouse.el (mouse-minor-mode-menu, minor-mode-menu-from-indicator):
+ Move here from bindings.el
+
2007-10-19 Richard Stallman <rms@gnu.org>
* help-fns.el (describe-function-1): Don't use the advice origname
;; mouse-major-mode-menu was using `command-execute' instead.
(call-interactively cmd))))
+(defun minor-mode-menu-from-indicator (indicator)
+ "Show menu, if any, for minor mode specified by INDICATOR.
+Interactively, INDICATOR is read using completion."
+ (interactive (list (completing-read "Minor mode indicator: "
+ (describe-minor-mode-completion-table-for-indicator))))
+ (let ((minor-mode (lookup-minor-mode-from-indicator indicator)))
+ (if minor-mode
+ (let* ((map (cdr-safe (assq minor-mode minor-mode-map-alist)))
+ (menu (and (keymapp map) (lookup-key map [menu-bar]))))
+ (if menu
+ (popup-menu menu)
+ (message "No menu for minor mode `%s'" minor-mode)))
+ (error "Cannot find minor mode for `%s'" indicator))))
+
+(defun mouse-minor-mode-menu (event)
+ "Show minor-mode menu for EVENT on minor modes area of the mode line."
+ (interactive "@e")
+ (let ((indicator (car (nth 4 (car (cdr event))))))
+ (minor-mode-menu-from-indicator indicator)))
+
(defvar mouse-major-mode-menu-prefix) ; dynamically bound
(defun mouse-major-mode-menu (event &optional prefix)