Commit Graph

43 Commits

Author SHA1 Message Date
John Maguire 3323c2d094 Convert all instances of foreach() to a C++11 for
find ext src -name '*.cpp' -exec \
    sed -i -e 's/foreach(\([^,]\+\),/for (\1 :/' {} \;
2014-02-10 14:43:32 +01:00
John Maguire bebd781fdf Reformat all non-3rd-party C/C++/Objective-C++.
Command line:
find src ext -regex '.*\.\(h\|cpp\|mm\)' -exec clang-format -i
 -style='{BasedOnStyle: Google, DerivePointerBinding: false}' {} \;
2014-02-07 16:34:20 +01:00
John Maguire 71893e4847 Use nullptr instead of NULL everywhere. 2014-02-06 17:29:59 +01:00
David Sansome 4e8dba16d4 Make the Spotify downloader optional again on Windows and Mac 2013-09-18 01:27:13 +10:00
David Sansome 2c55688601 Make the GPL spotify code non-optional 2013-09-18 00:49:29 +10:00
John Maguire b41a2b5308 Revert "Try out C++11 strongly typed enums."
This reverts commit 4e74c7af2b.
2012-12-05 09:36:22 +00:00
John Maguire 4e74c7af2b Try out C++11 strongly typed enums. 2012-12-04 16:22:09 +00:00
David Sansome 885d98b5f0 Remove the SpecialPlaylistType class, it hasn't been used since Spotify and Grooveshark search results went into the sidebar tree. 2012-10-30 22:53:09 -07:00
John Maguire 27975c7a16 Separate out spotify blob downloader into a new optional component. 2012-09-03 17:38:07 +02:00
Arnaud Bienner e6d76a72a5 Add "append to/replace/... playlist" and "Configure" actions to Spotify items. 2012-07-29 20:12:16 +02:00
Arnaud Bienner b08172138a Add a new PlayBehaviour (MultiplesItems) for loading playlits' songs by drag'n'drop for Internet services.
Use it for Spotify and Grooveshark.
2012-07-29 01:35:05 +02:00
Arnaud Bienner 13daaf7106 Don't show the search box for GS and Spotify if user isn't logged in 2012-07-21 20:15:36 +02:00
Arnaud Bienner 16fde37bac Remove Grooveshark and Spotify search playlist: we don't use them anymore since we can search on these services through the Internet tab 2012-07-16 00:27:43 +02:00
John Maguire dbf9970c76 Add suggestions from Spotify starred & top 100. 2012-07-12 16:35:09 +02:00
Arnaud Bienner 124d4e6a59 Always display "did you mean" widget in top of all windows.
Also, update its width to the text it should displayed
2012-07-01 23:55:54 +02:00
Arnaud Bienner 70429217c6 Search on Spotify on the left/Internet tab directly, instead of Spotify magic playlist (like for Grooveshark)
- Next step: fix the "did you mean" widget which is visible to user when displayed
2012-06-28 23:57:51 +02:00
Arnaud Bienner c7aca6335d Factorize some code for creating song item in Grooveshark and Spotify 2012-06-27 21:19:30 +02:00
John Maguire afd42118f1 Support toplists in the ui. 2012-06-12 15:53:23 +02:00
David Sansome 75a897e92d Don't require each InternetService to keep track of its own current index - do it in the model instead 2012-03-11 14:44:43 +00:00
David Sansome d538b71809 Add buttons and menu items to open the Podcast settings page. Also route these requests through Application rather than InternetModel 2012-03-10 22:39:24 +00:00
David Sansome bacef04405 Refactoring: remove a couple of the AlbumCoverLoader instances and instead use a shared CurrentArtLoader. 2012-02-26 14:40:51 +00:00
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
David Sansome bbf99fdd0b Change Spotify to use the new MessageHandler, remove SpotifyMessageHandler 2012-01-08 15:10:11 +00:00
David Sansome 68a379ef26 Use pb::spotify instead of spotify_pb for the protobuf namespace 2012-01-07 23:26:27 +00:00
David Sansome 9be641ee87 The external tagreader mostly works now:
* Make TagReaderClient a singleton until it's easier to pass dependencies around
 * Add a WaitForSignal() that uses a local event loop to wait for a signal to be emitted
 * Add a WaitForFinished() to _MessageReplyBase that blocks using a semaphore
 * Add blocking versions of all TagReaderClient methods
 * Use the TagReaderClient everywhere that Song::InitFromFile and friends were used before
2012-01-07 00:26:07 +00:00
John Maguire bcf9475f2b Add a source column to the playlist view with appropriate icons. 2012-01-04 11:56:09 +00:00
David Sansome 8d5ef62256 Do spotify image requests with string IDs instead of spotify://image/ urls. For some reason this seems to fix occasional crashes when image results arrive. Fixes issue 2411. 2011-11-29 10:21:40 +00:00
David Sansome 05460f9975 Mark spotify streams as not seekable 2011-11-28 18:45:12 +00:00
David Sansome 4dc4aa33ac Make the enabled/disabled state of a global search provider separate from its logged in state - means that now Grooveshark and Spotify providers will be enabled as soon as you login 2011-11-28 14:18:20 +00:00
David Sansome b873209d39 Remove the <xiphcomment.h> include from song.h so that windows headers don't infect everything else. Also move other bits of song.h into song.cpp, and reduce the number of includes in song.h. 2011-11-28 13:56:55 +00:00
David Sansome 89e8634928 Treat relogin failed messages from spotify differently, and only show the error dialog once. 2011-11-28 12:32:45 +00:00
David Sansome 62c3cb77cd Add settings for spotify bitrate and volume normalisation 2011-11-27 17:29:33 +00:00
John Maguire e32bb5cc89 Don't store the spotify password and instead use sp_session_relogin(). 2011-11-24 12:17:19 +01:00
David Sansome 6446ef8b9e Use PNG spotify icons instead of SVG 2011-11-05 16:08:56 +00:00
John Maguire 2e2f4e570c Make drag & drop work for Spotify user playlists. 2011-11-01 11:52:22 +01:00
David Sansome a8dfa31818 Make the logout button on the spotify settings page actually work 2011-10-30 18:52:54 +00:00
Arnaud Bienner b3bf374b6e Disable Grooveshark and Spotify in global search by default, because user needs a premium account to use these services 2011-10-20 17:21:24 +02:00
David Sansome c05a2ee182 Add a spotify gstreamer source element instead of hacking about with gsttcpserversrc. Implement seeking on spotify tracks. 2011-09-25 19:24:44 +01:00
David Sansome d83736acc0 Initialise a GlobalSearch in main and pass it around, so providers can register themselves 2011-09-24 14:44:23 +01:00
David Sansome 21be90a941 Change spotify protobuf namespace to something that isn't reserved, and do album loading in spotify 2011-08-29 03:32:37 +01:00
David Sansome 13fc24f6c6 Refactor the last.fm, magnatune, spotify and di.fm settings pages - moving the login state display into a separate widget. 2011-08-27 22:01:28 +01:00
David Sansome a0258a9e81 Add c++ implementations of the di.fm and sky.fm radio services 2011-07-23 15:32:11 +01:00
Tyler Rhodes ded8e5f6f0 Refactor "Radio" files into "Internet" files. 2011-07-15 13:27:50 +00:00