Mercurial > emacs
changeset 3477:c079a2d6cf0e
(x_set_menu_bar_lines_1): Adjust just the uppermost child
in a vertical split. Adjust the hight counter to the top.
(x_set_menu_bar_lines): Don't change overall frame height.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 04 Jun 1993 07:14:47 +0000 |
parents | 6c6d1c6afb57 |
children | a917a964bef8 |
files | src/xfns.c |
diffstat | 1 files changed, 13 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xfns.c Fri Jun 04 06:40:45 1993 +0000 +++ b/src/xfns.c Fri Jun 04 07:14:47 1993 +0000 @@ -929,17 +929,20 @@ Lisp_Object window; int n; { - for (; !NILP (window); window = XWINDOW (window)->next) + struct window *w = XWINDOW (window); + + XFASTINT (w->top) += n; + XFASTINT (w->height) -= n; + + /* Handle just the top child in a vertical split. */ + if (!NILP (w->vchild)) + x_set_menu_bar_lines_1 (w->vchild, n); + + /* Adjust all children in a horizontal split. */ + for (window = w->hchild; !NILP (window); window = w->next) { - struct window *w = XWINDOW (window); - - XFASTINT (w->top) += n; - - if (!NILP (w->vchild)) - x_set_menu_bar_lines_1 (w->vchild, n); - - if (!NILP (w->hchild)) - x_set_menu_bar_lines_1 (w->hchild, n); + w = XWINDOW (window); + x_set_menu_bar_lines_1 (window, n); } } @@ -965,16 +968,6 @@ FRAME_MENU_BAR_LINES (f) = nlines; x_set_menu_bar_lines_1 (f->root_window, nlines - olines); - /* Use FRAME_NEW_WIDTH, HEIGHT so as not to override a size change - made by the user but not fully reflected in the Emacs frame object. */ - x_set_window_size (f, - (FRAME_NEW_WIDTH (f) - ? FRAME_NEW_WIDTH (f) - : FRAME_WIDTH (f)), - ((FRAME_NEW_HEIGHT (f) - ? FRAME_NEW_HEIGHT (f) - : FRAME_HEIGHT (f)) - + nlines - olines)); } /* Change the name of frame F to ARG. If ARG is nil, set F's name to