aboutsummaryrefslogtreecommitdiffstats
path: root/background_scripts/completion.coffee
diff options
context:
space:
mode:
Diffstat (limited to 'background_scripts/completion.coffee')
-rw-r--r--background_scripts/completion.coffee8
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