From ee143aaf65a0e662c42c636aa4a959682858b3e7 Mon Sep 17 00:00:00 2001 From: phanium <91544758+phanen@users.noreply.github.com> Date: Mon, 31 Mar 2025 05:08:01 +0800 Subject: fix(terminal): emit Termrequest for all OSC sequences #33181 Problem: osc 0/1/2/52 didn't emit TermRequest. Solution: emit `TermRequest` for all recognized osc. --- src/nvim/vterm/state.c | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/src/nvim/vterm/state.c b/src/nvim/vterm/state.c index 0e43107347..3b7b5e2997 100644 --- a/src/nvim/vterm/state.c +++ b/src/nvim/vterm/state.c @@ -1948,28 +1948,26 @@ static int on_osc(int command, VTermStringFragment frag, void *user) case 0: settermprop_string(state, VTERM_PROP_ICONNAME, frag); settermprop_string(state, VTERM_PROP_TITLE, frag); - return 1; + break; case 1: settermprop_string(state, VTERM_PROP_ICONNAME, frag); - return 1; + break; case 2: settermprop_string(state, VTERM_PROP_TITLE, frag); - return 1; + break; case 52: if (state->selection.callbacks) { osc_selection(state, frag); } + break; + } - return 1; - - default: - if (state->fallbacks && state->fallbacks->osc) { - if ((*state->fallbacks->osc)(command, frag, state->fbdata)) { - return 1; - } + if (state->fallbacks && state->fallbacks->osc) { + if ((*state->fallbacks->osc)(command, frag, state->fbdata)) { + return 1; } } -- cgit