twitter/typeahead.js — pull request #718 by mjstallard (2014-02-24 23:10:45+00:00)
Title: Reduces dropdown flicker during a remote search. Fixes #176.

Hello!

This is a little fix I threw together to address the flickering issue for the project I'm currently working on.

The behaviour of Bloodhound has been changed such that the #get callback is only run if matches in the search index (i.e. local or prefetched) have been found, or if we're not making a network request.

The behaviour of Typeahead has been changed such that the dropdown is only cleared by the query changing if the query becomes an empty string.

As we're not using any local or prefetched sources, this means that we no longer see flickering between network requests. Furthermore, if we were to use local or prefetched sources then any matches would be still immediately available. The result is that we only clear the dropdown when we know for sure that there are no matches.

I'm not sure if this is the sort of thing you had in mind, but thought it was worth sending over anyway.

Thanks for building typeahead.js - really nice little plugin. :smiley: