gnome-shell/js
Jasper St. Pierre 842c792868 search: Only do a subsearch if the previous results have returned from DBus
There's a potential race condition in the search code: if we have an
outstanding search call to a provider for search "A", and if before it comes
back we do a subsearch for "AB", we won't have any results to pass along.

Previously, we used an empty list when storing the provider results, so we
effectively told the remote search app to filter through this empty list for
any search results that meet the new query, meaning we showed the user 0
results for the provider in this case.

Now that we don't store an empty list, but instead store `undefined`, this race
raises a warning. Solve it by doing an initial search query in this case
instead.

The search code isn't too smart about chained subsearches: now, if we hit this
race while already on a subsearch, we'll do an initial search for the subsearch
query instead, but that is much better than showing the user nothing. This
could be fixed in the future for a performance improvement.

Reviewed-by: Florian Müllner <fmuellner@gnome.org>
2013-11-04 14:50:45 -05:00
..
extensionPrefs Synchronize shell startup 2013-11-04 11:50:20 -05:00
gdm loginDialog: Use UserWidget 2013-10-30 13:19:02 -04:00
misc Synchronize shell startup 2013-11-04 11:50:20 -05:00
perf perf: Update to latest overlay changes 2012-08-20 20:40:01 +02:00
ui search: Only do a subsearch if the previous results have returned from DBus 2013-11-04 14:50:45 -05:00
js-resources.gresource.xml Load JS from GResource 2013-10-30 13:27:16 -04:00
Makefile.am build: Also look for resources in $(builddir) 2013-10-30 14:00:58 -04:00