fix(float): cursor visible in "hidden" floating window (#35219)

Problem:
Cursor is visible in "hidden" floating window.

Solution:
Hide cursor when curwin is a hidden floating window.
Show cursor after returning to a normal (non-hidden) window.

(cherry picked from commit d4f2b9050d)

Co-authored-by: glepnir <glephunter@gmail.com>
This commit is contained in:
neovim-backports[bot]
2025-08-07 16:18:32 +00:00
committed by GitHub
parent 5551da79c1
commit f4b4c27a35
5 changed files with 225 additions and 3 deletions

View File

@@ -536,7 +536,21 @@ void ui_flush(void)
if (!ui_active()) {
return;
}
static bool was_busy = false;
cmdline_ui_flush();
if (State != MODE_CMDLINE && curwin->w_floating && curwin->w_config.hide) {
if (!was_busy) {
ui_call_busy_start();
was_busy = true;
}
} else if (was_busy) {
ui_call_busy_stop();
was_busy = false;
}
win_ui_flush(false);
msg_ext_ui_flush();
msg_scroll_flush();