Commit 65ceb118 authored by Eli Zaretskii's avatar Eli Zaretskii

Fix bug #1077 with popping new frames from a minibuffer-only frame.

Do NOT merge with trunk!

 menu-bar.el (menu-bar-frame-for-menubar, menu-bar-positive-p): New functions.
 (menu-bar-showhide-menu) <menu-bar-mode, showhide-tool-bar>: Use
 them instead of `nil' and `>', respectively.
parent 81ced43d
2010-12-09 Eli Zaretskii <eliz@gnu.org>
* menu-bar.el (menu-bar-frame-for-menubar, menu-bar-positive-p):
New functions.
(menu-bar-showhide-menu) <menu-bar-mode, showhide-tool-bar>: Use
them instead of `nil' and `>', respectively. (Bug#1077)
2010-12-09 Stephen Berman <stephen.berman@gmx.net>
* calendar/diary-lib.el (diary-list-sexp-entries):
......
......@@ -980,16 +980,33 @@ mail status in mode line"))
:visible (and (display-graphic-p) (fboundp 'x-show-tip))
:button (:toggle . tooltip-mode)))
(defun menu-bar-frame-for-menubar ()
"Return the frame suitable for updating the menu bar."
(or (and (framep menu-updating-frame)
menu-updating-frame)
(selected-frame)))
(defun menu-bar-positive-p (val)
"Return non-nil iff VAL is a positive number."
(and (numberp val)
(> val 0)))
(define-key menu-bar-showhide-menu [menu-bar-mode]
`(menu-item ,(purecopy "Menu-bar") toggle-menu-bar-mode-from-frame
:help ,(purecopy "Turn menu-bar on/off")
:button (:toggle . (> (frame-parameter nil 'menu-bar-lines) 0))))
:button
(:toggle . (menu-bar-positive-p
(frame-parameter (menu-bar-frame-for-menubar)
'menu-bar-lines)))))
(define-key menu-bar-showhide-menu [showhide-tool-bar]
`(menu-item ,(purecopy "Tool-bar") toggle-tool-bar-mode-from-frame
:help ,(purecopy "Turn tool-bar on/off")
:visible (display-graphic-p)
:button (:toggle . (> (frame-parameter nil 'tool-bar-lines) 0))))
:button
(:toggle . (menu-bar-positive-p
(frame-parameter (menu-bar-frame-for-menubar)
'tool-bar-lines)))))
(define-key menu-bar-options-menu [showhide]
`(menu-item ,(purecopy "Show/Hide") ,menu-bar-showhide-menu))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment