From f72552bd387e3bef50507a3e5b37a8ca19946941 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 6 Nov 2013 12:10:22 +0200 Subject: [PATCH] Fix bug #15817 with TTY menus produced by minor modes. lisp/menu-bar.el (popup-menu, menu-bar-open): When displaying TTY menus, support also the menus produced by minor modes. --- lisp/ChangeLog | 6 ++++++ lisp/menu-bar.el | 7 +++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d775afd9c5..4740eab6ee 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2013-11-06 Eli Zaretskii + + * menu-bar.el (popup-menu, menu-bar-open): When displaying TTY + menus, support also the menus produced by minor modes. + (Bug#15817) + 2013-11-06 Leo Liu * thingatpt.el (thing-at-point-looking-at): Add optional arg diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 7ffc97b55d..ae1edabf58 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -2192,7 +2192,9 @@ FROM-MENU-BAR, if non-nil, means we are dropping one of menu-bar's menus." (or (lookup-key global-map (vector 'menu-bar menu-symbol)) (lookup-key (current-local-map) (vector 'menu-bar - menu-symbol)))))) + menu-symbol)) + (cdar (minor-mode-key-binding (vector 'menu-bar + menu-symbol))))))) ((and (not (keymapp map)) (listp map)) ;; We were given a list of keymaps. Search them all ;; in sequence until a first binding is found. @@ -2278,7 +2280,8 @@ If FRAME is nil or not given, use the selected frame." (menu (menu-bar-menu-at-x-y x 0 frame))) (popup-menu (or (lookup-key global-map (vector 'menu-bar menu)) - (lookup-key (current-local-map) (vector 'menu-bar menu))) + (lookup-key (current-local-map) (vector 'menu-bar menu)) + (cdar (minor-mode-key-binding (vector 'menu-bar menu)))) (posn-at-x-y x 0 nil t) nil t))) (t (with-selected-frame (or frame (selected-frame)) (tmm-menubar)))))) -- 2.20.1