diff options
| author | Eli Zaretskii | 2010-07-03 14:54:21 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2010-07-03 14:54:21 +0300 |
| commit | 1e6255ae888ffbee3a713c7d7fb41b8d6480ddb4 (patch) | |
| tree | 9fcf8dcf2aaba0d218f9d7e4e5169bee01c4bd96 | |
| parent | ae492bec164e0288fbc5ebdcbefc1d6441d077c5 (diff) | |
| download | emacs-1e6255ae888ffbee3a713c7d7fb41b8d6480ddb4.tar.gz emacs-1e6255ae888ffbee3a713c7d7fb41b8d6480ddb4.zip | |
Fix menu bar display on MS-DOS.
msdos.c (IT_set_frame_parameters): Set menu-bar-lines according
to menu-bar-mode, if not set in the frame parameters or in
default-frame-alist.
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/msdos.c | 18 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 68e3d7aae4e..c79c40e3b09 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,9 @@ | |||
| 1 | 2010-07-03 Eli Zaretskii <eliz@gnu.org> | 1 | 2010-07-03 Eli Zaretskii <eliz@gnu.org> |
| 2 | 2 | ||
| 3 | * msdos.c (IT_set_frame_parameters): Set menu-bar-lines according | ||
| 4 | to menu-bar-mode, if not set in the frame parameters or in | ||
| 5 | default-frame-alist. | ||
| 6 | |||
| 3 | * w32console.c (sys_tputs): Adjust argument list to prototype in | 7 | * w32console.c (sys_tputs): Adjust argument list to prototype in |
| 4 | term.c. | 8 | term.c. |
| 5 | 9 | ||
diff --git a/src/msdos.c b/src/msdos.c index ea604d29992..cca0b2e68b9 100644 --- a/src/msdos.c +++ b/src/msdos.c | |||
| @@ -2098,6 +2098,10 @@ IT_set_frame_parameters (f, alist) | |||
| 2098 | Lisp_Object frame_bg, frame_fg; | 2098 | Lisp_Object frame_bg, frame_fg; |
| 2099 | extern Lisp_Object Qdefault, QCforeground, QCbackground; | 2099 | extern Lisp_Object Qdefault, QCforeground, QCbackground; |
| 2100 | struct tty_display_info *tty = FRAME_TTY (f); | 2100 | struct tty_display_info *tty = FRAME_TTY (f); |
| 2101 | extern Lisp_Object Qmenu_bar_lines; | ||
| 2102 | extern Lisp_Object Vmenu_bar_mode; | ||
| 2103 | int menu_bar_lines_defined = | ||
| 2104 | !NILP (Fassq (Qmenu_bar_lines, Vdefault_frame_alist)); | ||
| 2101 | 2105 | ||
| 2102 | /* If we are creating a new frame, begin with the original screen colors | 2106 | /* If we are creating a new frame, begin with the original screen colors |
| 2103 | used for the initial frame. */ | 2107 | used for the initial frame. */ |
| @@ -2144,6 +2148,8 @@ IT_set_frame_parameters (f, alist) | |||
| 2144 | 2148 | ||
| 2145 | if (EQ (prop, Qreverse)) | 2149 | if (EQ (prop, Qreverse)) |
| 2146 | reverse = EQ (val, Qt); | 2150 | reverse = EQ (val, Qt); |
| 2151 | else if (!menu_bar_lines_defined && EQ (prop, Qmenu_bar_lines)) | ||
| 2152 | menu_bar_lines_defined = 1; | ||
| 2147 | } | 2153 | } |
| 2148 | 2154 | ||
| 2149 | need_to_reverse = reverse && !was_reverse; | 2155 | need_to_reverse = reverse && !was_reverse; |
| @@ -2226,6 +2232,18 @@ IT_set_frame_parameters (f, alist) | |||
| 2226 | store_frame_param (f, prop, val); | 2232 | store_frame_param (f, prop, val); |
| 2227 | } | 2233 | } |
| 2228 | 2234 | ||
| 2235 | /* If menu-bar-lines is neither in the frame parameters nor in | ||
| 2236 | default-frame-alist, set it according to menu-bar-mode. */ | ||
| 2237 | if (!menu_bar_lines_defined) | ||
| 2238 | { | ||
| 2239 | store_frame_param (f, Qmenu_bar_lines, | ||
| 2240 | NILP (Vmenu_bar_mode) | ||
| 2241 | ? make_number (0) : make_number (1)); | ||
| 2242 | if (tty->termscript) | ||
| 2243 | fprintf (tty->termscript, "<MENU BAR LINES DEFAULTED: %d\n", | ||
| 2244 | !NILP (Vmenu_bar_mode)); | ||
| 2245 | } | ||
| 2246 | |||
| 2229 | /* If they specified "reverse", but not the colors, we need to swap | 2247 | /* If they specified "reverse", but not the colors, we need to swap |
| 2230 | the current frame colors. */ | 2248 | the current frame colors. */ |
| 2231 | if (need_to_reverse) | 2249 | if (need_to_reverse) |