Mercurial > emacs
comparison src/xdisp.c @ 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 | 9a6099957160 |
children | 775d0eca0cc3 |
comparison
equal
deleted
inserted
replaced
25793:2bbee3534773 | 25794:a6041d251b77 |
---|---|
5516 SET_TEXT_POS (start, BEGV, BEGV_BYTE); | 5516 SET_TEXT_POS (start, BEGV, BEGV_BYTE); |
5517 SET_MARKER_FROM_TEXT_POS (w->start, start); | 5517 SET_MARKER_FROM_TEXT_POS (w->start, start); |
5518 | 5518 |
5519 /* Let it grow only, until we display an empty message, in which | 5519 /* Let it grow only, until we display an empty message, in which |
5520 case the window shrinks again. */ | 5520 case the window shrinks again. */ |
5521 if (height > XFASTINT (w->height) | 5521 if (height > XFASTINT (w->height)) |
5522 || exact_p | 5522 { |
5523 || BEGV == ZV) | |
5524 { | |
5525 Lisp_Object old_selected_window; | |
5526 Lisp_Object fix_window; | |
5527 int old_height = XFASTINT (w->height); | 5523 int old_height = XFASTINT (w->height); |
5528 | 5524 freeze_window_starts (f, 1); |
5529 freeze_window_starts (f, height > XFASTINT (w->height)); | 5525 grow_mini_window (w, height - XFASTINT (w->height)); |
5530 | 5526 window_height_changed_p = XFASTINT (w->height) != old_height; |
5531 /* If the mini-buffer is selected, try to not change | 5527 } |
5532 the height of Vminibuf_scroll_window. Otherwise try | 5528 else if (height < XFASTINT (w->height) |
5533 to not change the height of the selected window. */ | 5529 && (exact_p || BEGV == ZV)) |
5534 if (MINI_WINDOW_P (XWINDOW (selected_window))) | 5530 { |
5535 fix_window = Vminibuf_scroll_window; | 5531 int old_height = XFASTINT (w->height); |
5536 else | 5532 freeze_window_starts (f, 0); |
5537 fix_window = selected_window; | 5533 shrink_mini_window (w); |
5538 | |
5539 old_selected_window = selected_window; | |
5540 XSETWINDOW (selected_window, w); | |
5541 XWINDOW (fix_window)->height_fixed_p = 1; | |
5542 change_window_height (height - XFASTINT (w->height), 0); | |
5543 XWINDOW (fix_window)->height_fixed_p = 0; | |
5544 selected_window = old_selected_window; | |
5545 window_height_changed_p = XFASTINT (w->height) != old_height; | 5534 window_height_changed_p = XFASTINT (w->height) != old_height; |
5546 } | 5535 } |
5547 } | 5536 } |
5548 | 5537 |
5549 return window_height_changed_p; | 5538 return window_height_changed_p; |