Mercurial > vim
comparison src/window.c @ 30134:0211a930d873 v9.0.0403
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Commit: https://github.com/vim/vim/commit/fd7e60a33ddd83a82da4eb6267f1c12fa926f32b
Author: Luuk van Baal <luukvbaal@gmail.com>
Date: Wed Sep 7 14:42:49 2022 +0100
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Problem: 'equalalways' may be off when 'laststatus' is zero.
Solution: call last_status() before win_equal(). (Luuk van Baal,
closes #11070)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 07 Sep 2022 15:45:05 +0200 |
parents | b97a870a7c63 |
children | bc8ad1c28b51 |
comparison
equal
deleted
inserted
replaced
30133:a118dcb936b1 | 30134:0211a930d873 |
---|---|
2710 | 2710 |
2711 // The cursor position may be invalid if the buffer changed after last | 2711 // The cursor position may be invalid if the buffer changed after last |
2712 // using the window. | 2712 // using the window. |
2713 check_cursor(); | 2713 check_cursor(); |
2714 } | 2714 } |
2715 | |
2716 /* | |
2717 * If last window has a status line now and we don't want one, remove the | |
2718 * status line. Do this before win_equal(), because it may change the | |
2719 * height of a window | |
2720 */ | |
2721 last_status(FALSE); | |
2722 | |
2715 if (p_ea && (*p_ead == 'b' || *p_ead == dir)) | 2723 if (p_ea && (*p_ead == 'b' || *p_ead == dir)) |
2716 // If the frame of the closed window contains the new current window, | 2724 // If the frame of the closed window contains the new current window, |
2717 // only resize that frame. Otherwise resize all windows. | 2725 // only resize that frame. Otherwise resize all windows. |
2718 win_equal(curwin, curwin->w_frame->fr_parent == win_frame, dir); | 2726 win_equal(curwin, curwin->w_frame->fr_parent == win_frame, dir); |
2719 else | 2727 else |
2738 --split_disallowed; | 2746 --split_disallowed; |
2739 #ifdef MESSAGE_QUEUE | 2747 #ifdef MESSAGE_QUEUE |
2740 if (!did_decrement) | 2748 if (!did_decrement) |
2741 --dont_parse_messages; | 2749 --dont_parse_messages; |
2742 #endif | 2750 #endif |
2743 | |
2744 /* | |
2745 * If last window has a status line now and we don't want one, | |
2746 * remove the status line. | |
2747 */ | |
2748 last_status(FALSE); | |
2749 | 2751 |
2750 // After closing the help window, try restoring the window layout from | 2752 // After closing the help window, try restoring the window layout from |
2751 // before it was opened. | 2753 // before it was opened. |
2752 if (help_window) | 2754 if (help_window) |
2753 restore_snapshot(SNAP_HELP_IDX, close_curwin); | 2755 restore_snapshot(SNAP_HELP_IDX, close_curwin); |