fix(events): trigger VimResume on next UI request (#24426)

This commit is contained in:
zeertzjq
2023-07-23 07:16:41 +08:00
committed by GitHub
parent ad95b36985
commit a8cfdf43bc
6 changed files with 94 additions and 33 deletions

View File

@@ -215,6 +215,8 @@ void nvim_ui_attach(uint64_t channel_id, Integer width, Integer height, Dictiona
pmap_put(uint64_t)(&connected_uis, channel_id, ui);
ui_attach_impl(ui, channel_id);
may_trigger_vim_suspend_resume(false);
}
/// @deprecated
@@ -237,6 +239,10 @@ void nvim_ui_set_focus(uint64_t channel_id, Boolean gained, Error *error)
return;
}
if (gained) {
may_trigger_vim_suspend_resume(false);
}
do_autocmd_focusgained((bool)gained);
}

View File

@@ -305,6 +305,7 @@ void nvim_feedkeys(String keys, String mode, Boolean escape_ks)
Integer nvim_input(String keys)
FUNC_API_SINCE(1) FUNC_API_FAST
{
may_trigger_vim_suspend_resume(false);
return (Integer)input_enqueue(keys);
}
@@ -334,6 +335,8 @@ void nvim_input_mouse(String button, String action, String modifier, Integer gri
Integer col, Error *err)
FUNC_API_SINCE(6) FUNC_API_FAST
{
may_trigger_vim_suspend_resume(false);
if (button.data == NULL || action.data == NULL) {
goto error;
}