Commit Graph

132 Commits

Author SHA1 Message Date
David Sansome 70df709fc2 Don't use Connection: Keep-Alive when doing requests to the Jamendo API 2010-11-27 18:37:53 +00:00
David Sansome 69d3d89b0f Have a different list of smart playlists for Jamendo and the normal Library. Only add default Jamendo smart playlists once. 2010-11-27 17:52:08 +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
John Maguire d5d058fbaa Add debug header. 2010-11-26 16:03:13 +00:00
John Maguire eca1704384 Sort of working Jamendo dynamic playlist. 2010-11-26 15:16:48 +00:00
David Sansome 4e60558053 Use the Jamendo track id as the ROWID for tracks, and implement reloading the database. 2010-11-25 23:05:37 +00:00
David Sansome 17da224283 Record the Jamendo album ID with each song, and implement the context menu items to open album info and download album pages. 2010-11-25 22:16:29 +00:00
David Sansome 927937e236 Save and restore Jamendo playlist items properly. Add a Jamendo context menu. 2010-11-25 22:04:23 +00:00
David Sansome e36cbcb50c Get proper sized album art for Jamendo songs 2010-11-25 21:20:18 +00:00
David Sansome 9483f9b930 Typo 2010-11-25 21:20:06 +00:00
David Sansome f758004760 Stop the size of the radio header widget increasing when different services are selected. 2010-11-25 19:18:41 +00:00
John Maguire 8ede752ff9 Fix small leak. 2010-11-25 17:25:50 +00:00
John Maguire b2ffc58070 Only check subversion info if $BUILDBOT_REVISION not set.
Fix compile warning.
2010-11-25 17:14:11 +00:00
David Sansome 23d1ea81ea Add dividers to the list of icecast stations 2010-11-24 21:34:54 +00:00
David Sansome c021a639c5 Remember the icecast sort by mode 2010-11-24 21:16:33 +00:00
David Sansome ad191e0880 Show a context menu for icecast stations 2010-11-24 19:41:17 +00:00
David Sansome c43a06c04e Support drag&drop of icecast streams to the playlist 2010-11-24 19:25:41 +00:00
David Sansome 9a8d01e2bd Comment(s) from r2281 2010-11-23 23:10:53 +00:00
David Sansome 83948e4973 Fix the size of the icecast filter widget icons 2010-11-23 23:10:38 +00:00
David Sansome b9f7cf78a9 Make sorting and filtering the list of icecast stations work 2010-11-23 23:05:42 +00:00
David Sansome 8d23c8b3ee Comments from r2279 2010-11-23 22:37:00 +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
David Sansome e4a3a12a83 Show progress information while downloading and parsing Jamendo and Icecast catalogues. Also parse Jamendo in chunks rather than all in one go. 2010-11-23 18:53:08 +00:00
John Maguire 5feabe09de Add Jamendo support.
Fixes issue #470
2010-11-23 17:38:39 +00:00
David Sansome 89e3fde23b Add missing copyright headers to the icecast source and objective-c 2010-11-23 11:42:19 +00:00
John Maguire 0d96793e59 Merge small icecast genres into "other". 2010-11-22 21:14:06 +00:00
John Maguire b6d424bc04 Add stations with no good genres to "other". 2010-11-22 20:49:09 +00:00
John Maguire a7599a1fef Move the icecast stream de-duping to get more accurate genre sizes. 2010-11-22 20:47:53 +00:00
John Maguire 36f15a3cf3 Cleanup icecast genres a bit more. 2010-11-22 20:36:16 +00:00
John Maguire b7539759fc Upper case first letter in icecast genres. 2010-11-22 20:19:50 +00:00
John Maguire 5b909a2983 Comments from r2268. 2010-11-22 20:15:07 +00:00
John Maguire c2c3c8145b Add basic icecast directory support.
Fixes issue #601
2010-11-22 16:57:26 +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
John Maguire 171de9dde6 Show nice title for last.fm custom radios in playlist. 2010-11-18 23:22:47 +00:00
John Maguire 4ce140c614 Change loved radio station to mix radio.
Fixes issue #973
2010-11-18 21:55:50 +00:00
David Sansome b5f366c40a Add a thread safe network disk cache, and remove the need to pass a NetworkAccessManager around everywhere. Fixes issue #852 2010-10-16 17:20:54 +00:00
David Sansome b97b2138fa Play last.fm tag radio or similar artists radio when clicking on a tag in the song/artist info pane. 2010-10-16 15:22:14 +00:00
David Sansome 7e39bfece2 Show icons for each biography, order biographies by relevance, don't refresh artist info when switching to another song by the same artist. 2010-10-09 12:39:49 +00:00
David Sansome dcd18aacdc Revert r2095 - it doesn't compile with boost 1.40 2010-10-07 19:59:48 +00:00
John Maguire 588dbb6b0b Half a boost::spirit parser for RQL. 2010-10-07 17:41:13 +00:00
John Maguire 184cf0c0d8 Support last.fm RQL URLs.
For syntax, see: http://burnysblog.blogspot.com/2010/04/combo-station-urls.html
2010-10-07 13:59:24 +00:00
David Sansome a1a9943c72 Work around the broken liblastfm package 2010-09-29 19:26:02 +00:00
David Sansome 0a7fa788b3 On second thoughts, lose the gotos and handle the last.fm errors by throwing. 2010-09-13 23:52:05 +00:00
David Sansome 89c873f9ef There are no gotos in this code 2010-09-13 23:44:11 +00:00
David Sansome d08389bb9d Re-enable the settings dialog buttons after authentication even if you've switched to another tab before pressing Ok. Fixes issue #725 2010-09-13 21:40:50 +00:00
David Sansome 4020a7e774 Remove the debug profiling output from startup 2010-09-10 14:57:03 +00:00
David Sansome 78424a1e12 Don't populate the magnatune library model until its node is expanded in the view 2010-08-27 18:47:10 +00:00
David Sansome 62daf29ec8 Make Magnatune initialisation faster by creating the filter widget on demand 2010-08-27 18:36:30 +00:00
David Sansome ba5fb9f552 Lazy-load some of MainWindow's dialogs 2010-08-27 15:42:58 +00:00
David Sansome 59e5de1468 Lazyload the radio service context menus 2010-08-27 15:20:52 +00:00
John Maguire 774ae905e6 Disable focus rect on Mac for more widgets. 2010-08-26 12:34:03 +00:00
John Maguire e67f9a66c8 Load playlist in separate threads on startup. 2010-08-03 18:57:17 +00:00
David Sansome 0c123d58e8 Use a system QtIoCompressor if it's available 2010-07-11 12:02:30 +00:00
David Sansome fca4fb8264 On second thoughts, use temporary metadata for all playlist items. 2010-07-10 19:45:29 +00:00
David Sansome f808591ec7 Refactor the loading indicator widget into a seperate TaskManager class that can handle tasks with progress 2010-06-23 13:21:30 +00:00
David Sansome c950e79367 Make "Ban" skip to the next track 2010-06-21 12:16:05 +00:00
David Sansome 492d8fec87 Use sqlite's Full Text Search on the songs table 2010-06-20 16:30:10 +00:00
David Sansome c8413dec80 Save the saved streams after editing one.
Update issue #404
Status: Fixed
Ah I see the problem - it didn't save the streams to the config file when you edited one - only when you added a new one.  So if you edited a stream *then* added a new one it would save both, but if you edit one and then exit it would get lost.  Should be fixed now.
2010-06-18 01:21:32 +00:00
David Sansome fa8ce4b0b3 Fix a bug that would cause last.fm streams to be unplayable sometimes 2010-06-17 13:37:01 +00:00
David Sansome 357f229e02 Make saved radio streams use the song loader when dragged to the playlist 2010-06-16 16:11:23 +00:00
David Sansome 8340aa0a64 Warn before cancelling a Magnatune download, flash the taskbar and display a notification when it completes. 2010-06-12 20:43:07 +00:00
David Sansome 36abad486b Add a dialog for manual searching of Last.fm album covers. Fixes issue #402 2010-06-12 17:13:01 +00:00
David Sansome 15df3b90a3 Set window icons on all the dialogs. Fixes issue #394 2010-06-10 22:09:35 +00:00
David Sansome ffa354e887 Use a proper Magnatune partner ID 2010-06-09 16:05:59 +00:00
David Sansome 5f92d652a9 Show a "Configure Magnatune" button on the magnatune header 2010-06-09 15:38:00 +00:00
David Sansome 903dbba87e Dialog for downloading Magnatune albums 2010-06-09 14:02:26 +00:00
David Sansome 7a6df2860f Play the mp3s without commercials for magnatune subscribers 2010-06-08 23:29:50 +00:00
David Sansome 38a92e802b Save and load the magnatune settings properly 2010-06-08 23:18:20 +00:00
David Sansome 43ca921d65 Add a magnatune settings page (not functional yet), remove the last.fm config *dialog*, and instead make it bring up the settings dialog at the right page. 2010-06-08 22:56:31 +00:00
David Sansome 40bb827fcd Make all the source files a single cmake target again. 2010-06-08 22:39:31 +00:00
David Sansome 03d876a599 Put the Database object in its own thread, and create the Library and Playlist backends in that database thread. The database calls don't happen in the database thread yet, but this is the first step towards making sure sqlite access is thread safe. 2010-06-02 15:58:07 +00:00
John Maguire 98c97d13d6 Template magic \o/ 2010-05-27 23:34:05 +00:00
David Sansome 791534703c Allow names for custom saved streams. Fixes issue #242 2010-05-27 22:53:07 +00:00
David Sansome 4d57ccb41c Use icons from the desktop theme where possible, fall back on oxygen. 2010-05-19 15:45:29 +00:00
David Sansome 6bf26eca90 The Magnatune URLs are already encoded. 2010-05-19 13:03:03 +00:00
David Sansome 8b4c85a886 Make magnatune songs play again 2010-05-18 20:51:33 +00:00
David Sansome a292677320 Refactor the way Player gets tracks to play from RadioPlaylistItems. They can now return synchronously with a URL, asynchronously via a signal, or with an error. This properly fixes the problem of preloading a last.fm stream when the track before is about to end. 2010-05-18 20:43:10 +00:00
David Sansome 55bc18a9c0 Fix the appearance of several dialogs when using a high font DPI. Fixes issue #310 2010-05-17 00:47:43 +00:00
David Sansome 84c8caea55 Automatically expand the nodes in the magnatune database when searching 2010-05-16 23:44:33 +00:00
David Sansome a8f6dc6361 Get error messages from lastfm::ws::parse properly, and make sure to finish the busy indicator if an error does occur. Featuring: epic RTTI hack. 2010-05-16 23:16:38 +00:00
David Sansome f3c732019f Remove the last.fm album art loading code, and set the URL so AlbumCoverLoader can fetch it. 2010-05-16 22:46:56 +00:00
David Sansome 1aee5e4667 Split all the source files up into seven new directories. 2010-05-10 21:50:31 +00:00