v3: left and right step through emoji results too — with a :query picker open, only up and down went to the grid; left and right moved the caret in the textarea, so the first press of either did nothing visible. Every arrow now steps into the grid, landing one along from the automatic first match; Escape gives the caret back.
All checks were successful
Build and Publish Docker Image / build-and-push (push) Successful in 43s

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
khannurien
2026-09-27 11:29:44 +00:00
parent 85d0703077
commit bf28e49c34

View File

@@ -417,7 +417,10 @@ export const TextEditor = forwardRef<TextEditorHandle, TextEditorProps>(
first.click();
return true;
}
if ((e.key === "ArrowDown" || e.key === "ArrowUp") && plain) {
// Every arrow steps into the grid, left and right included: while a
// `:query` is open they pick among its results, not move the caret
// (Escape first to get the caret back).
if (e.key.startsWith("Arrow") && plain) {
if (!firstEmoji()) return false;
e.preventDefault();
arrowedRef.current = true;