From 2bafaa455e6a77b0cf8e50cf859b22692893338d Mon Sep 17 00:00:00 2001 From: Nolan Lawson Date: Sun, 13 Oct 2019 13:53:48 -0700 Subject: [PATCH] fix: tweak autosuggest error logging and resetting (#1572) --- src/routes/_actions/autosuggestAccountSearch.js | 8 ++++++-- src/routes/_actions/autosuggestHashtagSearch.js | 16 ++++++++++------ .../_store/observers/autosuggestObservers.js | 2 +- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/src/routes/_actions/autosuggestAccountSearch.js b/src/routes/_actions/autosuggestAccountSearch.js index c00f4df6..c848d826 100644 --- a/src/routes/_actions/autosuggestAccountSearch.js +++ b/src/routes/_actions/autosuggestAccountSearch.js @@ -73,13 +73,17 @@ export function doAccountSearch (searchText) { }) } + function onError (err) { + console.warn('ignored autosuggest error', err) + } + scheduleIdleTask(() => { if (canceled) { return } // run the two searches in parallel - searchAccountsLocally().then(onNewResults) - searchAccountsRemotely().then(onNewResults) + searchAccountsLocally().then(onNewResults).catch(onError) + searchAccountsRemotely().then(onNewResults).catch(onError) }) return { diff --git a/src/routes/_actions/autosuggestHashtagSearch.js b/src/routes/_actions/autosuggestHashtagSearch.js index 10f1fd08..94576c4b 100644 --- a/src/routes/_actions/autosuggestHashtagSearch.js +++ b/src/routes/_actions/autosuggestHashtagSearch.js @@ -33,12 +33,16 @@ export function doHashtagSearch (searchText) { } scheduleIdleTask(async () => { - const results = await requestThrottler.request() - store.setForCurrentAutosuggest({ - autosuggestType: 'hashtag', - autosuggestSelected: 0, - autosuggestSearchResults: results - }) + try { + const results = await requestThrottler.request() + store.setForCurrentAutosuggest({ + autosuggestType: 'hashtag', + autosuggestSelected: 0, + autosuggestSearchResults: results + }) + } catch (err) { + console.warn('ignored autosuggest error', err) + } }) return { diff --git a/src/routes/_store/observers/autosuggestObservers.js b/src/routes/_store/observers/autosuggestObservers.js index 1175c264..27e31e0f 100644 --- a/src/routes/_store/observers/autosuggestObservers.js +++ b/src/routes/_store/observers/autosuggestObservers.js @@ -24,10 +24,10 @@ export function autosuggestObservers () { const { composeFocused } = store.get() const autosuggestSelecting = store.getForCurrentAutosuggest('autosuggestSelecting') if (!composeFocused || !autosuggestSearchText || autosuggestSelecting) { + resetAutosuggest() return } - resetAutosuggest() if (autosuggestSearchText.startsWith(':')) { // emoji lastSearch = doEmojiSearch(autosuggestSearchText) } else if (autosuggestSearchText.startsWith('#')) { // hashtag