summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2013-10-05 19:33:37 +0300
committerEli Zaretskii <eliz@gnu.org>2013-10-05 19:33:37 +0300
commit72b70f6a68ac53cbab4db0e290259c1182a94db4 (patch)
treea2a72460f6b712cc9311920fda662d060f5e69e3
parent63dfbda7df0df5b054f8f95b79673672c267de54 (diff)
downloademacs-72b70f6a68ac53cbab4db0e290259c1182a94db4.tar.gz
Fix pop down menu with another click on menu bar.
-rw-r--r--lisp/menu-bar.el23
1 files changed, 23 insertions, 0 deletions
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el
index e37c6a28b4f..52cf0fd2f6d 100644
--- a/lisp/menu-bar.el
+++ b/lisp/menu-bar.el
@@ -2269,6 +2269,29 @@ If nil, the current mouse position is used."
map (current-global-map))
(substitute-key-definition 'keyboard-escape-quit 'tty-menu-exit
map (current-global-map))
+ ;; The bindings of menu-bar items are so that clicking on the menu
+ ;; bar when a menu is already shown pops down that menu.
+ ;; FIXME: we should iterate over all the visible menu-bar items,
+ ;; instead of naming them explicitly here. Also, this doesn't
+ ;; include items added by current major mode.
+ (substitute-key-definition (lookup-key (current-global-map) [menu-bar file])
+ 'tty-menu-exit
+ map (current-global-map))
+ (substitute-key-definition (lookup-key (current-global-map) [menu-bar edit])
+ 'tty-menu-exit
+ map (current-global-map))
+ (substitute-key-definition (lookup-key (current-global-map) [menu-bar options])
+ 'tty-menu-exit
+ map (current-global-map))
+ (substitute-key-definition (lookup-key (current-global-map) [menu-bar buffer])
+ 'tty-menu-exit
+ map (current-global-map))
+ (substitute-key-definition (lookup-key (current-global-map) [menu-bar tools])
+ 'tty-menu-exit
+ map (current-global-map))
+ (substitute-key-definition (lookup-key (current-global-map) [menu-bar help-menu])
+ 'tty-menu-exit
+ map (current-global-map))
(substitute-key-definition 'forward-char 'tty-menu-next-menu
map (current-global-map))
(substitute-key-definition 'backward-char 'tty-menu-prev-menu