fix: force immediate command processing after engine actions in TUI

Co-authored-by: aider (deepseek/deepseek-coder) <aider@aider.chat>
This commit is contained in:
Loic Coenen
2026-05-01 16:13:07 +00:00
parent bb41d82bac
commit b1b8363d67

6
tui.c
View File

@@ -270,18 +270,21 @@ void tui_run(Engine *engine) {
case 't': { case 't': {
int clip_idx = grid_to_clip_index(selected_row, selected_col); int clip_idx = grid_to_clip_index(selected_row, selected_col);
engine_trigger_clip(engine, clip_idx); engine_trigger_clip(engine, clip_idx);
engine_process_commands(engine);
break; break;
} }
case 'r': { case 'r': {
int clip_idx = grid_to_clip_index(selected_row, selected_col); int clip_idx = grid_to_clip_index(selected_row, selected_col);
engine_reset_clip(engine, clip_idx); engine_reset_clip(engine, clip_idx);
engine_process_commands(engine);
break; break;
} }
case 's': { case 's': {
// Trigger scene for current row // Trigger scene for current row
engine_trigger_scene(engine, selected_row); engine_trigger_scene(engine, selected_row);
engine_process_commands(engine);
break; break;
} }
@@ -298,6 +301,7 @@ void tui_run(Engine *engine) {
} }
QuantizeMode next = modes[(current + 1) % num_modes]; QuantizeMode next = modes[(current + 1) % num_modes];
engine_set_quantize_mode(engine, next); engine_set_quantize_mode(engine, next);
engine_process_commands(engine);
break; break;
} }
@@ -308,11 +312,13 @@ void tui_run(Engine *engine) {
} else { } else {
engine_set_quantize_threshold(engine, 0); engine_set_quantize_threshold(engine, 0);
} }
engine_process_commands(engine);
break; break;
} }
case 'x': case 'x':
engine_reset_transport(engine); engine_reset_transport(engine);
engine_process_commands(engine);
break; break;
case ':': { case ':': {