diff options
| author | YAMAMOTO Mitsuharu | 2006-02-15 08:41:36 +0000 |
|---|---|---|
| committer | YAMAMOTO Mitsuharu | 2006-02-15 08:41:36 +0000 |
| commit | 052c4ff370464bf164912207381857e8182cc87a (patch) | |
| tree | 5fceb3c20ba8ece99bccc4a62054df007ae3f8d8 /src | |
| parent | 58ec29139aea7173bd91095892c2987fe1317321 (diff) | |
| download | emacs-052c4ff370464bf164912207381857e8182cc87a.tar.gz emacs-052c4ff370464bf164912207381857e8182cc87a.zip | |
(x_set_menu_bar_lines): Menu bar is always shown on Mac.
Diffstat (limited to 'src')
| -rw-r--r-- | src/macfns.c | 35 |
1 files changed, 7 insertions, 28 deletions
diff --git a/src/macfns.c b/src/macfns.c index b6ef85bcd9f..617167dfc46 100644 --- a/src/macfns.c +++ b/src/macfns.c | |||
| @@ -1647,36 +1647,15 @@ x_set_menu_bar_lines (f, value, oldval) | |||
| 1647 | struct frame *f; | 1647 | struct frame *f; |
| 1648 | Lisp_Object value, oldval; | 1648 | Lisp_Object value, oldval; |
| 1649 | { | 1649 | { |
| 1650 | int nlines; | 1650 | /* Make sure we redisplay all windows in this frame. */ |
| 1651 | int olines = FRAME_MENU_BAR_LINES (f); | 1651 | windows_or_buffers_changed++; |
| 1652 | |||
| 1653 | /* Right now, menu bars don't work properly in minibuf-only frames; | ||
| 1654 | most of the commands try to apply themselves to the minibuffer | ||
| 1655 | frame itself, and get an error because you can't switch buffers | ||
| 1656 | in or split the minibuffer window. */ | ||
| 1657 | if (FRAME_MINIBUF_ONLY_P (f)) | ||
| 1658 | return; | ||
| 1659 | |||
| 1660 | if (INTEGERP (value)) | ||
| 1661 | nlines = XINT (value); | ||
| 1662 | else | ||
| 1663 | nlines = 0; | ||
| 1664 | 1652 | ||
| 1665 | FRAME_MENU_BAR_LINES (f) = 0; | 1653 | FRAME_MENU_BAR_LINES (f) = 0; |
| 1666 | if (nlines) | 1654 | /* The menu bar is always shown. */ |
| 1667 | FRAME_EXTERNAL_MENU_BAR (f) = 1; | 1655 | FRAME_EXTERNAL_MENU_BAR (f) = 1; |
| 1668 | else | 1656 | if (FRAME_MAC_P (f) && f->output_data.mac->menubar_widget == 0) |
| 1669 | { | 1657 | /* Make sure next redisplay shows the menu bar. */ |
| 1670 | if (FRAME_EXTERNAL_MENU_BAR (f) == 1) | 1658 | XWINDOW (FRAME_SELECTED_WINDOW (f))->update_mode_line = Qt; |
| 1671 | free_frame_menubar (f); | ||
| 1672 | FRAME_EXTERNAL_MENU_BAR (f) = 0; | ||
| 1673 | |||
| 1674 | /* Adjust the frame size so that the client (text) dimensions | ||
| 1675 | remain the same. This depends on FRAME_EXTERNAL_MENU_BAR being | ||
| 1676 | set correctly. */ | ||
| 1677 | x_set_window_size (f, 0, FRAME_COLS (f), FRAME_LINES (f)); | ||
| 1678 | do_pending_window_change (0); | ||
| 1679 | } | ||
| 1680 | adjust_glyphs (f); | 1659 | adjust_glyphs (f); |
| 1681 | } | 1660 | } |
| 1682 | 1661 | ||