* term/w32-win.el (w32-menu-bar-open): Rename from menu-bar-open.
authorJason Rumney <jasonr@gnu.org>
Wed, 11 Jun 2008 00:25:24 +0000 (00:25 +0000)
committerJason Rumney <jasonr@gnu.org>
Wed, 11 Jun 2008 00:25:24 +0000 (00:25 +0000)
Use tmm-menubar if menu is disabled in this frame.

* menu-bar.el (menu-bar-open): Determine how to open menu bar
from frame type, per documentation. Add w32 case.

lisp/ChangeLog
lisp/menu-bar.el
lisp/term/w32-win.el

index 254bc97..c1a72c6 100644 (file)
@@ -1,3 +1,11 @@
+2008-06-11  Jason Rumney  <jasonr@gnu.org>
+
+        * term/w32-win.el (w32-menu-bar-open): Rename from menu-bar-open.
+        Use tmm-menubar if menu is disabled in this frame.
+
+        * menu-bar.el (menu-bar-open): Determine how to open menu bar
+        from frame type, per documentation. Add w32 case.
+
 2008-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * minibuffer.el (completion--merge-suffix): New function.
index 710022b..a7ca598 100644 (file)
@@ -1903,14 +1903,17 @@ See `menu-bar-mode' for more information."
 
 This function decides which method to use to access the menu
 depending on FRAME's terminal device.  On X displays, it calls
-`x-menu-bar-open'; otherwise it calls `tmm-menubar'.
+`x-menu-bar-open'; on Windows, `w32-menu-bar-open' otherwise it
+calls `tmm-menubar'.
 
 If FRAME is nil or not given, use the selected frame."
   (interactive)
-  (if (eq window-system 'x)
-      (x-menu-bar-open frame)
-    (with-selected-frame (or frame (selected-frame))
-      (tmm-menubar))))
+  (let ((type (framep (or frame (selected-frame)))))
+    (cond
+     ((eq type 'x) (x-menu-bar-open frame))
+     ((eq type 'w32) (w32-menu-bar-open frame))
+     (t (with-selected-frame (or frame (selected-frame))
+          (tmm-menubar))))))
 
 (global-set-key [f10] 'menu-bar-open)
 
index f6f3b53..d7e0c58 100644 (file)
@@ -385,16 +385,21 @@ XConsortium: rgb.txt,v 10.41 94/02/20 18:39:36 rws Exp")
 
  ;;; make f10 activate the real menubar rather than the mini-buffer menu
  ;;; navigation feature.
- (defun menu-bar-open (&optional frame)
+ (defun w32-menu-bar-open (&optional frame)
    "Start key navigation of the menu bar in FRAME.
  
- This initially activates the first menu-bar item, and you can then navigate
- with the arrow keys, select a menu entry with the Return key or cancel with
- the Escape key.  If FRAME has no menu bar, this function does nothing.
+This initially activates the first menu-bar item, and you can then navigate
+with the arrow keys, select a menu entry with the Return key or cancel with
+the Escape key.  If FRAME has no menu bar, this function does nothing.
  
- If FRAME is nil or not given, use the selected frame."
+If FRAME is nil or not given, use the selected frame.
+If FRAME does not have the menu bar enabled, display a text menu using
+`tmm-menubar'."
    (interactive "i")
-   (w32-send-sys-command ?\xf100 frame))
+   (if menu-bar-mode
+       (w32-send-sys-command ?\xf100 frame)
+     (with-selected-frame (or frame (selected-frame))
+       (tmm-menubar))))
 \f
 
 ;; W32 systems have different fonts than commonly found on X, so