diff options
author | Sean Dewar <6256228+seandewar@users.noreply.github.com> | 2024-03-09 01:00:33 +0000 |
---|---|---|
committer | Sean Dewar <6256228+seandewar@users.noreply.github.com> | 2024-03-09 01:00:33 +0000 |
commit | 54022a2946aca5de991e7fa1ebc2954340ec20a8 (patch) | |
tree | 295a81edf26f8f89899106995fde3681910555cb /test/functional/api/window_spec.lua | |
parent | e7c262f5553c1c6e1de95bcbdc8cfe7cc9d5e55e (diff) | |
download | rneovim-54022a2946aca5de991e7fa1ebc2954340ec20a8.tar.gz rneovim-54022a2946aca5de991e7fa1ebc2954340ec20a8.tar.bz2 rneovim-54022a2946aca5de991e7fa1ebc2954340ec20a8.zip |
fix(api): win_set_config update statuslines after removing splits
Problem: nvim_win_set_config does not update statuslines after removing a split.
Solution: call last_status.
Didn't realize this was missing in the original nvim_win_set_config for splits
PR.
As it can only be done for the current tabpage, do it if win_tp == curtab;
enter_tabpage will eventually call last_status anyway when the user enters
another tabpage.
Diffstat (limited to 'test/functional/api/window_spec.lua')
-rw-r--r-- | test/functional/api/window_spec.lua | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/functional/api/window_spec.lua b/test/functional/api/window_spec.lua index ae8a519f11..6b7c550ca8 100644 --- a/test/functional/api/window_spec.lua +++ b/test/functional/api/window_spec.lua @@ -2379,6 +2379,28 @@ describe('API/win', function() ) eq(cur_win, api.nvim_get_current_win()) end) + + it('updates statusline when moving bottom split', function() + local screen = Screen.new(10, 10) + screen:set_default_attr_ids({ + [0] = { bold = true, foreground = Screen.colors.Blue }, -- NonText + [1] = { bold = true, reverse = true }, -- StatusLine + }) + screen:attach() + exec([[ + set laststatus=0 + belowright split + call nvim_win_set_config(0, #{split: 'above', win: win_getid(winnr('#'))}) + ]]) + screen:expect([[ + ^ | + {0:~ }|*3 + {1:[No Name] }| + | + {0:~ }|*3 + | + ]]) + end) end) describe('get_config', function() |