From 4d67c484f9a0ac774a79cb948ad18872d9d24649 Mon Sep 17 00:00:00 2001 From: Antonella Sgarlatta Date: Tue, 25 May 2021 16:47:21 -0300 Subject: [PATCH] fix: focus input after option click --- .../javascripts/components/AutocompleteTagInput.tsx | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/app/assets/javascripts/components/AutocompleteTagInput.tsx b/app/assets/javascripts/components/AutocompleteTagInput.tsx index fb672bcee..347c49de8 100644 --- a/app/assets/javascripts/components/AutocompleteTagInput.tsx +++ b/app/assets/javascripts/components/AutocompleteTagInput.tsx @@ -33,7 +33,7 @@ export const AutocompleteTagInput: FunctionalComponent = ({ const inputRef = useRef(); const dropdownRef = useRef(); - const [closeOnBlur] = useCloseOnBlur(dropdownRef, (visible: boolean) => { + const [closeOnBlur, setLockCloseOnBlur] = useCloseOnBlur(dropdownRef, (visible: boolean) => { setDropdownVisible(visible); setSearchQuery(''); setTagResults(getActiveNoteTagResults('')); @@ -46,20 +46,17 @@ export const AutocompleteTagInput: FunctionalComponent = ({ setDropdownVisible(true); }; - const reloadTags = (query: string) => { - setTagResults(getActiveNoteTagResults(query)); - }; - const onSearchQueryChange = (event: Event) => { const query = (event.target as HTMLInputElement).value; - reloadTags(query); + setTagResults(getActiveNoteTagResults(query)); setSearchQuery(query); }; const onOptionClick = async (tag: SNTag) => { + setLockCloseOnBlur(true); await appState.notes.addTagToActiveNote(tag); - setSearchQuery(''); - reloadTags(searchQuery); + inputRef.current.focus(); + setLockCloseOnBlur(false); }; return (