Mercurial > emacs
changeset 25794:a6041d251b77
(resize_mini_window): Use grow_mini_window and
shrink_mini_window.
author | Gerd Moellmann <gerd@gnu.org> |
---|---|
date | Thu, 23 Sep 1999 11:58:42 +0000 |
parents | 2bbee3534773 |
children | 84921c27b2b5 |
files | src/xdisp.c |
diffstat | 1 files changed, 12 insertions(+), 23 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xdisp.c Thu Sep 23 11:58:41 1999 +0000 +++ b/src/xdisp.c Thu Sep 23 11:58:42 1999 +0000 @@ -5518,30 +5518,19 @@ /* Let it grow only, until we display an empty message, in which case the window shrinks again. */ - if (height > XFASTINT (w->height) - || exact_p - || BEGV == ZV) - { - Lisp_Object old_selected_window; - Lisp_Object fix_window; + if (height > XFASTINT (w->height)) + { int old_height = XFASTINT (w->height); - - freeze_window_starts (f, height > XFASTINT (w->height)); - - /* If the mini-buffer is selected, try to not change - the height of Vminibuf_scroll_window. Otherwise try - to not change the height of the selected window. */ - if (MINI_WINDOW_P (XWINDOW (selected_window))) - fix_window = Vminibuf_scroll_window; - else - fix_window = selected_window; - - old_selected_window = selected_window; - XSETWINDOW (selected_window, w); - XWINDOW (fix_window)->height_fixed_p = 1; - change_window_height (height - XFASTINT (w->height), 0); - XWINDOW (fix_window)->height_fixed_p = 0; - selected_window = old_selected_window; + freeze_window_starts (f, 1); + grow_mini_window (w, height - XFASTINT (w->height)); + window_height_changed_p = XFASTINT (w->height) != old_height; + } + else if (height < XFASTINT (w->height) + && (exact_p || BEGV == ZV)) + { + int old_height = XFASTINT (w->height); + freeze_window_starts (f, 0); + shrink_mini_window (w); window_height_changed_p = XFASTINT (w->height) != old_height; } }