diff options
Diffstat (limited to 'background_scripts')
| -rw-r--r-- | background_scripts/completion.coffee | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/background_scripts/completion.coffee b/background_scripts/completion.coffee index 64039b5f..1efffce3 100644 --- a/background_scripts/completion.coffee +++ b/background_scripts/completion.coffee @@ -183,6 +183,12 @@ class MultiCompleter refresh: -> completer.refresh() for completer in @completers when completer.refresh filter: (queryTerms, onComplete) -> + # Only allow one query to run at a time. + if @filterInProgress + @mostRecentQuery = { queryTerms: queryTerms, onComplete: onComplete } + return + @mostRecentQuery = null + @filterInProgress = true suggestions = [] completersFinished = 0 for completer in @completers @@ -194,6 +200,8 @@ class MultiCompleter results = @sortSuggestions(suggestions)[0...@maxResults] result.generateHtml() for result in results onComplete(results) + @filterInProgress = false + @filter(@mostRecentQuery.queryTerms, @mostRecentQuery.onComplete) if @mostRecentQuery sortSuggestions: (suggestions) -> for suggestion in suggestions |
