Commit Graph

60 Commits

Author SHA1 Message Date
David Sansome 48f15c9fc7 Refactoring: instead of passing individual pointers to useful core classes (like TaskManager or LibraryBackend) to each class that uses them, pass one singleton-like Application instance everywhere. 2012-02-26 14:40:51 +00:00
Angus Gratton edb9b0b4fe Add album effective_artist filter that falls back to artist when unavailable (Issue 509) 2011-11-28 11:04:38 +00:00
Arnaud Bienner 2511a97077 Add an index on filename on songs table. Particullary, this heavily speed up the 'Add folder' usecase 2011-11-12 19:33:50 +01:00
David Sansome 53f1f6509b Fix URLs in device tables as well when upgrading 2011-11-12 17:15:10 +00:00
David Sansome 563de288ba Encode URLs properly when doing the DB schema conversion to store filenames as URLs 2011-06-14 14:46:02 +00:00
David Sansome 792352be3b When songs disappear from the filesystem (either they're deleted or are on a removable media that was unmounted), mark them as unavailable instead of removing them from the database. Thanks google@robbertkrebbers.nl. Fixes issue 401 2011-05-14 13:43:57 +00:00
David Sansome 06852aaeb7 Show spotify search results in a separate playlist tab rather than in a tree in the sidebar. 2011-04-28 17:50:45 +00:00
David Sansome 255682b057 Remove the special load behaviour from Playlist Items and instead add URL Handlers that do the same job but for all playlist item types. 2011-04-28 15:10:28 +00:00
David Sansome ccb9f8cf94 Use URLs everywhere instead of filenames. Move the URL parsing and song loading code out of individual playlist parsers and into the base class. Fix the playlist parser unit tests. 2011-04-28 12:27:53 +00:00
David Sansome b15156a7a3 Handle bigger protobuf messages, add spotify searching to the UI 2011-04-27 16:38:28 +00:00
David Sansome 3d6677fe6d Allow radio services (Spotify) to store whole songs in playlist items 2011-04-26 22:06:58 +00:00
David Sansome 3eedc916ad Add a new logging system 2011-04-22 16:50:29 +00:00
Paweł Bara aa6c3ab35b a way to mark DB schema versions as requiring a full library rescan
message dialog for a user when he's reached a full library rescan requiring schema version (like the final one of CUE sheet support)
2011-02-25 20:10:41 +00:00
David Sansome 507c5e2632 Change the fields in Song from seconds to nanoseconds 2011-02-13 18:34:30 +00:00
Paweł Bara 9a9d8ad177 don't let invalid CUE related media files into library (invalid == those which were not recognized by TagLib)
better logging of erroneous DB queries (error + query + bound values instead of just error)
2011-02-05 13:43:04 +00:00
Paweł Bara 2959dbff85 'show duplicates only' view for library where you can see which songs in your library are duplicated and delete unnecessary duplicates (fixes issue #1328) 2011-01-30 21:00:49 +00:00
Paweł Bara a575dac451 restoring CUE related files in playlist after Clementine's restart (fixes issue #68) 2011-01-19 15:36:40 +00:00
Paweł Bara ddd3f119d3 CUE songs are now properly updated in library - you can delete a CUE sheet, add it, you can change section markers in it etc. and everything should work as expected
Song now knows it's cue path (if any)
2011-01-15 18:46:23 +00:00
Paweł Bara bb79a68be0 some minor .cue related changes 2011-01-04 17:12:29 +00:00
Paweł Bara da5f941333 consider .cues when scanning the library
persist the new 'beginning' marker of songs
fixed a bug where %allsongstables script would not update the attached databases
2010-12-28 15:36:01 +00:00
John Maguire 4c66007e26 Code review comments from r2370. 2010-12-09 13:06:00 +00:00
John Maguire 3a19bb9d46 Fix config file location on Mac and automatically migrate. 2010-12-09 12:34:08 +00:00
David Sansome 8aa7973312 Always create the schema in external databases if it doesn't exist yet. Fixes issue #1034 2010-12-07 19:07:12 +00:00
David Sansome cef02b4f61 Fix database test 2010-12-05 12:53:12 +00:00
David Sansome f9959a4fba Treat the Jamendo database schema the same as other databases. 2010-12-05 10:55:21 +00:00
David Sansome b1bf95a668 Remember which library a dynamic playlist was using when you restart clementine 2010-11-27 19:11:36 +00:00
David Sansome b85ddbb380 Put the Jamendo songs in a separate database that gets attached to the main database. "Reload" it by deleting the file, which is much faster than DELETEing all the songs inside. Make reloading the Jamendo, Icecast and Magnatune databases always bypass the network cache. Store the Jamendo track IDs in a separate table - for some reason this makes inserts faster. Fix the Jamendo model after the inital database load. Make the Jamendo dymanic playlist use the entries that are already in the local database rather than fetching the song metadata again. 2010-11-27 16:14:09 +00:00
David Sansome 188c7a53ec Add a database table, backend, and model for Icecast radio stations. Added a filter widget as well, but it doesn't actually search or sort yet. 2010-11-23 22:36:00 +00:00
John Maguire 5feabe09de Add Jamendo support.
Fixes issue #470
2010-11-23 17:38:39 +00:00
David Sansome 5969e2b3d7 Remember whether a dynamic playlist was active between restarts 2010-11-20 20:30:21 +00:00
David Sansome ed1a25693c Add missing licenses to debian/copyright, and add copyright information to each source file 2010-11-20 13:27:10 +00:00
David Sansome 9e20ef13bc Automatic scoring. Thanks Arnaud Bienner. Fixes issue #141 2010-11-01 21:15:52 +00:00
David Sansome 42e4c4a8db Add a skipcount field to the database, and read the last played time into Song objects. (still not used in the GUI yet). 2010-10-17 17:50:20 +00:00
David Sansome 95556df6aa Move database schema into a subdirectory of data/ 2010-10-17 11:22:34 +00:00
David Sansome d8ea4660e7 Store the device's transcode preference in the database 2010-08-29 15:32:36 +00:00
David Sansome c35bd8779a Make sure -1 and "" get stored in the database instead of NULL for song metadata. Thanks YellowOnion. Fixes issue #396. Fixes issue #479. 2010-07-24 15:13:09 +00:00
David Sansome db5409b66b Store devices in the main database 2010-07-03 23:00:07 +00:00
David Sansome 6654182032 Don't connect new devices automatically, put them in a list model. Add icons for ipods, android phones and USB memory sticks. 2010-07-03 21:05:55 +00:00
David Sansome a1fbd65f68 Test whether sqlite3 has the FTS3 at compile time, and use the static sqlite3 module if not 2010-06-30 19:55:46 +00:00
David Sansome 2deca7fd61 Add a DeviceManager which holds all the listers and connected devices. Make FilesystemDevices use their own LibraryWatcher. 2010-06-26 12:41:18 +00:00
David Sansome ad4229160e Pedantry 2010-06-21 12:42:22 +00:00
David Sansome 1339ee860d Don't need these symbols any more 2010-06-21 12:41:38 +00:00
David Sansome ea52bbf3e2 Register the FTS3 tokenizer with a QSqlQuery, so it works even if we couldn't resolve the sqlite symbols. 2010-06-21 12:38:24 +00:00
John Maguire b91a61c260 Tidy unicode length detection & add Cyrillic FTS test. 2010-06-21 12:07:56 +00:00
John Maguire f544e28051 Fix FTS on Mac & Win. 2010-06-21 09:32:57 +00:00
John Maguire 614e031c20 Hopefully fix static sqlite, ie. Mac & Win. 2010-06-20 21:05:18 +00:00
John Maguire 379681157a OCD 2010-06-20 20:59:54 +00:00
John Maguire abf79ca447 Tests and refactoring for FTS. 2010-06-20 20:51:57 +00:00
John Maguire f989976d30 Some tests for the new FTS stuff. 2010-06-20 20:44:54 +00:00
John Maguire 59984c49ad Tidy up a bit. 2010-06-20 20:07:32 +00:00