mirror of
https://github.com/tulir/gomuks.git
synced 2025-04-19 18:13:41 -05:00
web/composer: fix using arrow keys to pick autocomplete results
This commit is contained in:
parent
082e5642aa
commit
e2458c7657
2 changed files with 5 additions and 2 deletions
|
@ -42,6 +42,9 @@ const positiveMod = (val: number, div: number) => (val % div + div) % div
|
|||
export const EmojiAutocompleter = ({ params, state, setState, setAutocomplete }: AutocompleterProps) => {
|
||||
const emojis = useFilteredEmojis((params.frozenQuery ?? params.query).slice(1), true)
|
||||
const onSelect = useEvent((index: number) => {
|
||||
if (emojis.length === 0) {
|
||||
return
|
||||
}
|
||||
index = positiveMod(index, emojis.length)
|
||||
const emoji = emojis[index]
|
||||
setState({
|
||||
|
|
|
@ -150,10 +150,10 @@ const MessageComposer = ({ room, scrollToBottomRef, setReplyToRef }: MessageComp
|
|||
sendMessage(evt)
|
||||
}
|
||||
if (autocomplete && !evt.ctrlKey && !evt.altKey) {
|
||||
if (!evt.shiftKey && (evt.key === "Tab" || evt.key === "Down")) {
|
||||
if (!evt.shiftKey && (evt.key === "Tab" || evt.key === "ArrowDown")) {
|
||||
setAutocomplete({ ...autocomplete, selected: (autocomplete.selected ?? -1) + 1 })
|
||||
evt.preventDefault()
|
||||
} else if ((evt.shiftKey && evt.key === "Tab") || (!evt.shiftKey && evt.key === "Up")) {
|
||||
} else if ((evt.shiftKey && evt.key === "Tab") || (!evt.shiftKey && evt.key === "ArrowUp")) {
|
||||
setAutocomplete({ ...autocomplete, selected: (autocomplete.selected ?? 0) - 1 })
|
||||
evt.preventDefault()
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue