emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 7be75f1: * lisp/printing.el (pr-global-menubar): Fix duplicate me


From: Juri Linkov
Subject: master 7be75f1: * lisp/printing.el (pr-global-menubar): Fix duplicate menu problem.
Date: Wed, 23 Jun 2021 16:17:41 -0400 (EDT)

branch: master
commit 7be75f17e79b547dc03e26e3980d4ce75bfa668d
Author: Saroj Thirumalai <emacs_bugs.saroj@thirumalai.com>
Commit: Juri Linkov <juri@linkov.net>

    * lisp/printing.el (pr-global-menubar): Fix duplicate menu problem.
    
    In Emacs 27.1 Print menu items were moved to a submenu of the File menu.
    The Printing package (lisp/printing.el) replaces the Print menu (via the
    function: pr-global-menubar).  The latter needs to be updated to reflect the
    changes; otherwise, a second Print (sub)menu is created at the end of the
    File menu.
    
    Copyright-paperwork-exempt: yes
---
 lisp/printing.el | 27 +++++++++------------------
 1 file changed, 9 insertions(+), 18 deletions(-)

diff --git a/lisp/printing.el b/lisp/printing.el
index 5c7da96..e7aab90 100644
--- a/lisp/printing.el
+++ b/lisp/printing.el
@@ -1081,24 +1081,15 @@ Used by `pr-menu-bind' and `pr-update-menus'.")
   "Specify Printing menu-bar entry.")
 
 (defun pr-global-menubar (menu-spec)
-  (let ((menu-file '("menu-bar" "file")))
-    (cond
-     (pr-menu-print-item
-      (easy-menu-add-item global-map menu-file
-                          (easy-menu-create-menu "Print" menu-spec)
-                          "print-buffer")
-      (dolist (item '("print-buffer"          "print-region"
-                      "ps-print-buffer-faces" "ps-print-region-faces"
-                      "ps-print-buffer"       "ps-print-region"))
-        (easy-menu-remove-item global-map menu-file item))
-      (setq pr-menu-print-item nil
-            pr-menu-bar (vector 'menu-bar
-                                (easy-menu-intern (nth 1 menu-file))
-                                (easy-menu-intern "Print"))))
-     (t
-      (easy-menu-add-item global-map menu-file
-                          (easy-menu-create-menu "Print" menu-spec)))
-     )))
+  (let ((menu-file '("menu-bar" "file"))
+        (submenu-path [menu-bar file Print])
+        (submenu (easy-menu-create-menu "Print" menu-spec)))
+    (cond (pr-menu-print-item
+           (easy-menu-add-item global-map menu-file submenu "Print")
+           (easy-menu-remove-item global-map menu-file "print")
+           (setq pr-menu-print-item nil
+                 pr-menu-bar submenu-path))
+          (t (easy-menu-add-item global-map menu-file submenu)))))
 
 (defun pr-menu-position (entry index horizontal)
   (let ((pos (cdr (mouse-pixel-position))))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]