Specifically, I updated any sections of the code that were using the old DBus interfaces (now deprecated in favor of GIO/GLib). This cascaded, since Tracker's API has also changed, adding an explicit dependency. To top it all off, Vala's syntax, too, has undergone changes, making it more difficult to pass around multidimensional arrays and altering the way casting is done.
Fixes bug #37. The feature that the progress of a search is displayed in the search bar is questionable. Since one fast query is used for searching I never see it, even for large results.
The playlist is now multi-selection dnd capable. This commit also fixes dnd of multiple files from the file system into the playlist.
* Add a mutli-selection capable TreeView class. * Extract the SearchView class from the UserInterface Class.
Do we really need Hum.Track? We always pass track data from Tracker arrays to the Gtk.ListStore. The other interfaces only use the URL.
* Refactor the query engine to use a single query with a limit of 1024 items. This can be extended to an async batch query. * The GUI does no longer freezes on my system even if you get a full result set (1024). * Strings with less than 3 characters do not get searched. * The query is reduced to the minimal set of matadata that is needed to display the result. * Reduce the coping of strings for search queries by copying it directly into the ListStore. * Remove trailing whitespace.