From 492b92790951a50c7a67ae7d112fae9dfa9f3e86 Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Wed, 27 Oct 2021 16:09:47 +0300 Subject: [PATCH] Fix help commands for menu-bar menus * lisp/help.el (help--analyze-key): Fix "C-h c" and "C-h k" on menu-bar menu items. (Bug#51421) --- lisp/help.el | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lisp/help.el b/lisp/help.el index 92e22aecb5b..d22f50de8ab 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -701,7 +701,13 @@ in the selected window." ;; is selected from the context menu that should describe KEY ;; at the position of mouse click that opened the context menu. ;; When no mouse was involved, don't use `mouse-set-point'. - (defn (if buffer (key-binding key t) + (defn (if (or buffer + ;; Clicks on the menu bar produce "event" that + ;; is just '(menu-bar)', for which + ;; `mouse-set-point' is not useful. + (and (not (windowp (posn-window (event-start event)))) + (not (framep (posn-window (event-start event)))))) + (key-binding key t) (save-excursion (mouse-set-point event) (key-binding key t))))) ;; Handle the case where we faked an entry in "Select and Paste" menu. (when (and (eq defn nil) -- 2.39.5