UIEnter/UILeave: fire for embedder UI, builtin TUI

Before this, --embed UIs (without --headless) would not trigger UIEnter.

For TUI, maybe UIEnter isn't useful, but:
- It is less "surprising"/special.
- Makes documentation simpler.
- When TUI becomes a coprocess, it will happen anyway.
This commit is contained in:
Justin M. Keyes
2019-09-12 16:43:52 -07:00
parent 589f612adf
commit 492ac04f7e
3 changed files with 40 additions and 8 deletions

View File

@@ -37,12 +37,14 @@ describe('nvim_ui_attach()', function()
end)
it('autocmds UIEnter/UILeave', function()
clear{args={
'--cmd', 'let g:evs = []',
'--cmd', 'autocmd UIEnter * :call add(g:evs, "UIEnter") | let g:uienter_ev = deepcopy(v:event)',
'--cmd', 'autocmd UILeave * :call add(g:evs, "UILeave") | let g:uileave_ev = deepcopy(v:event)',
'--cmd', 'autocmd VimEnter * :call add(g:evs, "VimEnter")',
}}
clear{
args_rm={'--headless'},
args={
'--cmd', 'let g:evs = []',
'--cmd', 'autocmd UIEnter * :call add(g:evs, "UIEnter") | let g:uienter_ev = deepcopy(v:event)',
'--cmd', 'autocmd UILeave * :call add(g:evs, "UILeave") | let g:uileave_ev = deepcopy(v:event)',
'--cmd', 'autocmd VimEnter * :call add(g:evs, "VimEnter")',
}}
local screen = Screen.new()
screen:attach()
eq({chan=1}, eval('g:uienter_ev'))