diff options
Diffstat (limited to 'src/nvim/ui.c')
-rw-r--r-- | src/nvim/ui.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/nvim/ui.c b/src/nvim/ui.c index a49e9df9ee..4fcfee1192 100644 --- a/src/nvim/ui.c +++ b/src/nvim/ui.c @@ -348,7 +348,8 @@ void ui_attach_impl(UI *ui, uint64_t chanid) if (ui_count == MAX_UI_COUNT) { abort(); } - if (!ui->ui_ext[kUIMultigrid] && !ui->ui_ext[kUIFloatDebug]) { + if (!ui->ui_ext[kUIMultigrid] && !ui->ui_ext[kUIFloatDebug] + && !ui_client_channel_id) { ui_comp_attach(ui); } @@ -502,6 +503,9 @@ handle_T ui_cursor_grid(void) void ui_flush(void) { + if (!ui_active()) { + return; + } cmdline_ui_flush(); win_ui_flush(); msg_ext_ui_flush(); @@ -608,6 +612,12 @@ bool ui_has(UIExtension ext) return ui_ext[ext]; } +/// Returns true if the UI has messages area. +bool ui_has_messages(void) +{ + return p_ch > 0 || ui_has(kUIMessages); +} + Array ui_array(void) { Array all_uis = ARRAY_DICT_INIT; |