Fix slash command autocomplete Enter behavior

When pressing Enter on a highlighted slash command suggestion (e.g., typing
`/mod` with `/model` highlighted), the completion is now applied before
submitting. Previously, the partial text was submitted instead of the
selected command.

Fixes #49
This commit is contained in:
Mario Zechner 2025-11-21 21:50:19 +01:00
parent ba8c073ed2
commit 3018b01460
2 changed files with 16 additions and 1 deletions

View file

@ -220,8 +220,22 @@ export class Editor implements Component {
return;
}
// If Enter was pressed on a slash command, cancel autocomplete and let it submit
// If Enter was pressed on a slash command, apply completion and submit
if (data === "\r" && this.autocompletePrefix.startsWith("/")) {
const selected = this.autocompleteList.getSelectedItem();
if (selected && this.autocompleteProvider) {
const result = this.autocompleteProvider.applyCompletion(
this.state.lines,
this.state.cursorLine,
this.state.cursorCol,
selected,
this.autocompletePrefix,
);
this.state.lines = result.lines;
this.state.cursorLine = result.cursorLine;
this.state.cursorCol = result.cursorCol;
}
this.cancelAutocomplete();
// Don't return - fall through to submission logic
}