diff options
Diffstat (limited to 'background_scripts/completion.coffee')
| -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 | 
