diff options
| author | Eli Zaretskii | 2024-04-15 16:50:59 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2024-04-15 16:50:59 +0300 |
| commit | 9b755244bf0b9cd5f820ae45a4db14913a587c7b (patch) | |
| tree | d4bc57e3a635cde1e7b45f2e3e5228331c8577eb /src | |
| parent | a80a5d42d3a5f095c9d52ef5f5fe18d2e500d875 (diff) | |
| download | emacs-9b755244bf0b9cd5f820ae45a4db14913a587c7b.tar.gz emacs-9b755244bf0b9cd5f820ae45a4db14913a587c7b.zip | |
Fix resetting the frame's 'frozen_window_starts' flag
* src/window.c (grow_mini_window, shrink_mini_window): Reimplement
how the frame's 'frozen_window_starts' flag is set and reset, to
make sure it is always reset when the mini-window gets to its
normal one-line height. Patch by Martin Rudalics
<rudalics@gmx.at> (Bug#70038)
Diffstat (limited to 'src')
| -rw-r--r-- | src/window.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/window.c b/src/window.c index fe26311fbb2..6c0fce4119f 100644 --- a/src/window.c +++ b/src/window.c | |||
| @@ -5376,7 +5376,6 @@ grow_mini_window (struct window *w, int delta) | |||
| 5376 | struct window *r = XWINDOW (root); | 5376 | struct window *r = XWINDOW (root); |
| 5377 | Lisp_Object grow; | 5377 | Lisp_Object grow; |
| 5378 | 5378 | ||
| 5379 | FRAME_WINDOWS_FROZEN (f) = true; | ||
| 5380 | grow = call3 (Qwindow__resize_root_window_vertically, | 5379 | grow = call3 (Qwindow__resize_root_window_vertically, |
| 5381 | root, make_fixnum (- delta), Qt); | 5380 | root, make_fixnum (- delta), Qt); |
| 5382 | 5381 | ||
| @@ -5390,6 +5389,8 @@ grow_mini_window (struct window *w, int delta) | |||
| 5390 | && window_resize_check (r, false)) | 5389 | && window_resize_check (r, false)) |
| 5391 | resize_mini_window_apply (w, -XFIXNUM (grow)); | 5390 | resize_mini_window_apply (w, -XFIXNUM (grow)); |
| 5392 | } | 5391 | } |
| 5392 | FRAME_WINDOWS_FROZEN (f) | ||
| 5393 | = window_body_height (w, WINDOW_BODY_IN_PIXELS) > FRAME_LINE_HEIGHT (f); | ||
| 5393 | } | 5394 | } |
| 5394 | 5395 | ||
| 5395 | /** | 5396 | /** |
| @@ -5413,7 +5414,6 @@ shrink_mini_window (struct window *w) | |||
| 5413 | struct window *r = XWINDOW (root); | 5414 | struct window *r = XWINDOW (root); |
| 5414 | Lisp_Object grow; | 5415 | Lisp_Object grow; |
| 5415 | 5416 | ||
| 5416 | FRAME_WINDOWS_FROZEN (f) = false; | ||
| 5417 | grow = call3 (Qwindow__resize_root_window_vertically, | 5417 | grow = call3 (Qwindow__resize_root_window_vertically, |
| 5418 | root, make_fixnum (delta), Qt); | 5418 | root, make_fixnum (delta), Qt); |
| 5419 | 5419 | ||
| @@ -5425,6 +5425,8 @@ shrink_mini_window (struct window *w) | |||
| 5425 | bar. */ | 5425 | bar. */ |
| 5426 | grow_mini_window (w, -delta); | 5426 | grow_mini_window (w, -delta); |
| 5427 | 5427 | ||
| 5428 | FRAME_WINDOWS_FROZEN (f) | ||
| 5429 | = window_body_height (w, WINDOW_BODY_IN_PIXELS) > FRAME_LINE_HEIGHT (f); | ||
| 5428 | } | 5430 | } |
| 5429 | 5431 | ||
| 5430 | DEFUN ("resize-mini-window-internal", Fresize_mini_window_internal, | 5432 | DEFUN ("resize-mini-window-internal", Fresize_mini_window_internal, |