fix(intro): clear intro if new buffer is shown in focused float

This commit is contained in:
Evgeni Chasnovski 2024-03-28 15:47:04 +02:00
parent 9530a23016
commit b61575ba70
No known key found for this signature in database
GPG Key ID: BB32E27DDF942DFB
2 changed files with 43 additions and 1 deletions

View File

@ -424,7 +424,7 @@ int update_screen(void)
static bool still_may_intro = true;
if (still_may_intro) {
if (!may_show_intro()) {
must_redraw = UPD_NOT_VALID;
redraw_later(firstwin, UPD_NOT_VALID);
still_may_intro = false;
}
}

View File

@ -1727,6 +1727,48 @@ describe('ui/ext_messages', function()
}
end)
it('clears intro screen when new buffer is active in floating window', function()
local win_opts = { relative = 'editor', height = 1, width = 5, row = 1, col = 5 }
api.nvim_open_win(api.nvim_create_buf(false, false), true, win_opts)
screen:expect {
grid = [[
|
{1:~ }{8:^ }{1: }|
{1:~ }|*22
]],
}
end)
it('clears intro screen when initial buffer is active in floating window', function()
local win_opts = { relative = 'editor', height = 1, width = 5, row = 1, col = 5 }
api.nvim_open_win(api.nvim_get_current_buf(), true, win_opts)
screen:expect {
grid = [[
|
{1:~ }{8:^ }{1: }|
{1:~ }|*22
]],
}
end)
it('clears intro screen when initial window is converted to be floating', function()
exec_lua([[
local init_win_id = vim.api.nvim_get_current_win()
vim.cmd('split')
local win_opts = { relative = 'editor', height = 1, width = 5, row = 1, col = 5 }
vim.api.nvim_win_set_config(init_win_id, win_opts)
vim.api.nvim_set_current_win(init_win_id)
]])
screen:expect {
grid = [[
|
{1:~ }{8:^ }{1: }|
{1:~ }|*21
{6:[No Name] }|
]],
}
end)
it('supports global statusline', function()
feed(':set laststatus=3<cr>')
feed(':sp<cr>')