]> git.eshelyaron.com Git - emacs.git/commitdiff
Add missing implementation of `pgtk-menu-bar-open'
authorPo Lu <luangruo@yahoo.com>
Sun, 19 Dec 2021 01:43:26 +0000 (09:43 +0800)
committerPo Lu <luangruo@yahoo.com>
Sun, 19 Dec 2021 01:43:26 +0000 (09:43 +0800)
* lisp/term/pgtk-win.el (pgtk-menu-bar-open): New function.
(bug#52604)

lisp/term/pgtk-win.el

index 689a5e595a5c2975771476868ef3ecd53c1072dc..bd925a012993dae13e93f619e83f6fc7fe453ff3 100644 (file)
@@ -497,6 +497,18 @@ This uses `icon-map-list' to map icon file names to stock icon names."
             (and value (cdr value))))
         x-gtk-stock-cache))))
 
+(declare-function accelerate-menu "pgtkmenu.c" (&optional frame) t)
+
+(defun pgtk-menu-bar-open (&optional frame)
+  "Open the menu bar if it is shown.
+`popup-menu' is used if it is off."
+  (interactive "i")
+  (cond
+   ((and (not (zerop (or (frame-parameter nil 'menu-bar-lines) 0)))
+        (fboundp 'accelerate-menu))
+    (accelerate-menu frame))
+   (t
+    (popup-menu (mouse-menu-bar-map) last-nonmenu-event))))
 
 (provide 'pgtk-win)
 (provide 'term/pgtk-win)