feat: allow esc to interrupt session (#2054)

## Summary
- allow Esc to interrupt the current session when a task is running
- document Esc as an interrupt key in status indicator

## Testing
- `just fmt`
- `just fix` *(fails: E0658 `let` expressions in this position are
unstable)*
- `cargo test --all-features` *(fails: E0658 `let` expressions in this
position are unstable)*

------
https://chatgpt.com/codex/tasks/task_i_689698cf605883208f57b0317ff6a303
This commit is contained in:
pakrym-oai
2025-08-08 18:59:54 -07:00
committed by GitHub
parent 4a916ba914
commit 329f01b728
3 changed files with 24 additions and 2 deletions

View File

@@ -571,6 +571,14 @@ impl ChatWidget<'_> {
self.bottom_pane.on_file_search_result(query, matches);
}
pub(crate) fn on_esc(&mut self) -> bool {
if self.bottom_pane.is_task_running() {
self.interrupt_running_task();
return true;
}
false
}
/// Handle Ctrl-C key press.
/// Returns CancellationEvent::Handled if the event was consumed by the UI, or
/// CancellationEvent::Ignored if the caller should handle it (e.g. exit).