David Sansome
1c338455c3
Add missing copyright headers
2012-06-23 11:31:48 +01:00
John Maguire
b9d2d3326d
Only support override in Clang.
2012-06-21 16:13:41 +02:00
John Maguire
09d37aaa01
Add OVERRIDE macro like Java's @Override.
2012-06-20 16:49:41 +02:00
John Maguire
215595bfdb
Support toplist browsing in spotify blob.
2012-06-12 15:34:23 +02:00
David Sansome
5984aecbb8
Make the spotify blob send 5 seconds of audio ahead of the clock time to fill up Clementine's buffer when starting playback. Fixes issue 2671
2012-06-09 17:52:39 +01:00
John Maguire
9dd4f31795
Use libspotify 12.1.45.
...
Fixes issue #2972
2012-06-07 12:35:24 +02:00
Arnaud Bienner
dcc26b01ff
Correct define guard's name
2012-04-25 01:22:30 +02:00
Arnaud Bienner
01daea7090
Commit missing modifications/change ConcurrentRun description a bit
2012-04-25 00:29:19 +02:00
Arnaud Bienner
76b98000fe
Add ConcurrentRun functions, and us one of them in gstenginepipeline with gstenginepipeline's own threadpool.
...
So now we can (finally!) play/pause/stop music while fingerprinting lot of songs or whatever else
2012-04-25 00:21:01 +02:00
Arnaud Bienner
fbda1f9489
Add a debug message when TagLib can't read a file
2012-04-25 00:10:40 +02:00
John Maguire
66c8d6d360
Tidy up a bit.
2012-04-13 15:53:17 +02:00
John Maguire
133c2e1640
Postpone the database check & backup to a little while after startup.
2012-04-13 15:49:56 +02:00
David Sansome
1c80cfbadb
Use libspotify 11.1.56
2012-03-27 22:01:37 +01:00
John Maguire
a09165c392
Make it more obviously wrong to use the Closure internals.
2012-03-20 15:14:44 +01:00
John Maguire
e4ae4b6df5
Remove poor man's static asserts.
2012-03-19 21:19:24 +01:00
John Maguire
c4d3062459
Make the SharedClosure implementation a bit less horrible.
2012-03-19 21:17:57 +01:00
David Sansome
d7a5af07fb
Copy+paste the shared pointer closure constructor a couple of times for different numbers of arguments.
2012-03-19 19:38:36 +00:00
John Maguire
e1d77e0124
Add support for QSharedPointer in Closure.
2012-03-19 19:37:57 +01:00
David Sansome
b9e08bbfe6
Update podcasts on a schedule and on demand. Update them immediately after subscribing, and make episodes appear in the tree.
2012-03-09 15:26:15 +00:00
David Sansome
b53578c490
Don't reset a song's rating back to 0 if it was edited in the EditTagDialog
2012-03-04 13:36:22 +00:00
John Maguire
5280ddf3d7
Add support for demangling symbols on Linux.
2012-02-02 15:50:42 +01:00
David Sansome
f213813e71
Load cover art from MP4 files
2012-01-29 19:51:58 +00:00
David Sansome
34a24971c5
Don't try to restart a worker while killing it.
2012-01-22 18:53:17 +00:00
David Sansome
694ffe42df
Don't send messages to a handler in the time between its socket closing and its process ending. Fixes a race condition that would result in a tag loading operation never completing. Fixes issue 2616
2012-01-22 18:53:17 +00:00
David Sansome
58c0f464cd
Queue messages in WorkerPool instead of in each individual handler, so the entire queue isn't lost if a worker crashes.
2012-01-22 18:53:17 +00:00
David Sansome
84a1ae2f87
Add some debugging code to the tagreader worker that makes it crash randomly.
2012-01-22 18:53:17 +00:00
John Maguire
0212a1fa91
D'oh
2012-01-17 21:29:20 -08:00
John Maguire
4f6ee57297
Apparently <execinfo.h> doesn't exist for mingw.
2012-01-17 20:57:56 -08:00
John Maguire
ab58c72c66
ifdef DumpStackTrace() for non-Unix.
2012-01-17 20:45:33 -08:00
John Maguire
5fe7d1ad20
Add stack trace dumper (might need some tweaks for win & Linux still).
2012-01-17 20:35:10 -08:00
David Sansome
3e0f252b34
Exit worker processes when their sockets are closed, and make sure the main app closes sockets when exiting - fixes a crash dialog on Windows.
2012-01-08 16:35:01 +00:00
David Sansome
bbf99fdd0b
Change Spotify to use the new MessageHandler, remove SpotifyMessageHandler
2012-01-08 15:10:11 +00:00
David Sansome
67c6dead5a
Rename SpotifyMessage to Message
2012-01-07 23:31:43 +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
David Sansome
9041117867
Move everything around in the source tree - static libraries and external binaries now go in "ext/". Add a generic worker pool.
2012-01-05 23:25:13 +00:00