From 3f91cbc8b04cf3a0f38c75c5915b5653899ebc27 Mon Sep 17 00:00:00 2001 From: "jabber.developer2" Date: Sun, 31 May 2026 14:25:42 +0300 Subject: [PATCH] fix(ui): clearok(stdscr) in ui_resume to clear vim screen residue ncurses didn't know the editor clobbered the physical screen, so the first refresh after vim exit was a no-op diff. Stale frame stayed visible until the next keystroke triggered readline redisplay. --- src/tools/editor.c | 2 +- src/ui/core.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/tools/editor.c b/src/tools/editor.c index ea79dfdb..7a8e4948 100644 --- a/src/tools/editor.c +++ b/src/tools/editor.c @@ -182,7 +182,7 @@ editor_emergency_kill(void) return; } log_warning("[Editor] aborting editor pid %d", editor_pid); - kill(editor_pid, SIGCONT); // wake if STOPPED; no-op otherwise + kill(editor_pid, SIGCONT); // wake if STOPPED; no-op otherwise kill(editor_pid, SIGTERM); // _editor_exit_cb will restore the UI when the child reaps. } diff --git a/src/ui/core.c b/src/ui/core.c index 2d492752..e779aaa7 100644 --- a/src/ui/core.c +++ b/src/ui/core.c @@ -198,6 +198,7 @@ void ui_resume(void) { ui_suspended = FALSE; + clearok(stdscr, TRUE); // ncurses can't see vim's screen clobber refresh(); inp_resume(); }