mirror of
https://github.com/neovim/neovim.git
synced 2025-09-05 10:58:16 +00:00
fix(window): don't add a hsep when out of room if global stl is off
Problem: a horizontal separator may be added to a window that doesn't need one
if there is no room when moving a different window.
Solution: only restore a hsep in winframe_restore when the global statusline is
enabled.
(cherry picked from commit bf5f7c1591
)
This commit is contained in:

committed by
github-actions[bot]
![github-actions[bot]](/assets/img/avatar_default.png)
parent
4c8486e1f2
commit
8c311386c3
@@ -3359,7 +3359,7 @@ void winframe_restore(win_T *wp, int dir, frame_T *unflat_altfr)
|
|||||||
if (frp->fr_parent->fr_layout == FR_COL && frp->fr_prev != NULL) {
|
if (frp->fr_parent->fr_layout == FR_COL && frp->fr_prev != NULL) {
|
||||||
if (global_stl_height() == 0 && wp->w_status_height == 0) {
|
if (global_stl_height() == 0 && wp->w_status_height == 0) {
|
||||||
frame_add_statusline(frp->fr_prev);
|
frame_add_statusline(frp->fr_prev);
|
||||||
} else if (wp->w_hsep_height == 0) {
|
} else if (global_stl_height() > 0 && wp->w_hsep_height == 0) {
|
||||||
frame_add_hsep(frp->fr_prev);
|
frame_add_hsep(frp->fr_prev);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -504,6 +504,20 @@ describe('global statusline', function()
|
|||||||
{3:[No Name] 0,0-1 All}|
|
{3:[No Name] 0,0-1 All}|
|
||||||
|
|
|
|
||||||
]])
|
]])
|
||||||
|
|
||||||
|
-- Shouldn't gain a hsep if the global statusline is turned off.
|
||||||
|
command('set laststatus=2')
|
||||||
|
eq('Vim(wincmd):E36: Not enough room', pcall_err(command, 'wincmd L'))
|
||||||
|
command('mode')
|
||||||
|
screen:expect([[
|
||||||
|
|
|
||||||
|
{1:~ }|*5
|
||||||
|
{2:[No Name] 0,0-1 All}|
|
||||||
|
^ |
|
||||||
|
{1:~ }|*6
|
||||||
|
{3:[No Name] 0,0-1 All}|
|
||||||
|
|
|
||||||
|
]])
|
||||||
end)
|
end)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user