Commit Graph

575 Commits

Author SHA1 Message Date
David Sansome 19a971c7cd Add support for adding podcast episodes to the playlist 2012-03-10 23:39:09 +00:00
David Sansome b0dd1bd284 Add a podcast downloader 2012-03-10 15:32:36 +00:00
David Sansome 1abf059d16 Add a Podcasts settings page and the start of some gpodder.net syncing 2012-03-09 15:26:38 +00: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 80b95a357d Add a BBC Podcasts page 2012-03-07 15:31:12 +00:00
David Sansome 17dfc99462 Add an iTunes podcast search page 2012-03-07 12:27:44 +00:00
David Sansome bbb661b82c Add a gpodder.net search 2012-03-06 21:25:16 +00:00
David Sansome 884080684a Add a helper class to load icons asynchronously and set them on QStandardItems 2012-03-06 21:24:41 +00:00
David Sansome e54a2ff5c5 Get the most popular top-level tags from gpodder.net 2012-03-06 18:39:34 +00:00
David Sansome c91acdb3f1 Add an Add Podcast dialog 2012-03-06 18:39:34 +00:00
David Sansome 90bbed1ec9 Add podcast parsing and database classes 2012-03-06 18:39:23 +00:00
David Sansome ab5ccf69da Refactoring: remove BackgroundThread 2012-02-26 15:05:46 +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
Arnaud Bienner 089586ad07 Activate fast QString concatenation.
As this is not source compatible because we sometimes assumed (now wrongly) that '+' operation returns QString object (it now returns QStringBuilder object actually), some minor other corrections were needed.
2012-02-19 14:44:33 +01:00
Alan Briolat 577d13038a Created SubsonicUrlHandler 2012-02-01 21:32:00 +00:00
Alan Briolat 8110cdf241 Minimal SubsonicService and SubsonicSettingsPage to show up in UI 2012-02-01 21:32:00 +00:00
John Maguire 3e65d3d5f0 Add ScopedNSAutoreleasePool from Chromium. 2012-01-31 13:54:03 +01:00
Martin Björklund 8d63ddd3eb Add a Discogs cover provider
Fixes issue 1794
2012-01-29 14:27:07 +00:00
Руслан Ижбулатов 5c45e22e28 Make SAC and WMDM optional 2012-01-22 14:35:22 +00:00
Orcan Ogetbil 9dd4b1bb94 Use SHA2 system library when available
Fixes issue 2623
2012-01-17 23:12:44 +01:00
Arnaud Bienner c2d794c014 Merge branch 'master' into appearance 2012-01-09 20:15:10 +01:00
Arnaud Bienner ea063e1c39 Add missing modifications 2012-01-09 20:08:09 +01:00
John Maguire aa20c2b226 Deploy clementine-tagreader on mac. 2012-01-09 11:24:34 +00:00
David Sansome 4618651cf4 Merge branch 'master' into external-tagreader 2012-01-07 22:52:18 +00:00
David Sansome d17629586f Use the system version of libchromaprint if available 2012-01-07 15:27:50 +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 cdb381a85f Rename MusicDNS -> Acoustid. 2012-01-06 16:51:27 +00:00
John Maguire 598948d16e Remove echoprint. 2012-01-06 16:42:22 +00:00
John Maguire f241124b1d Remove old OFA fingerprinter. 2012-01-06 16:40:08 +00:00
John Maguire 423295b01e Add Chromaprinter class to generate fingerprint from gstreamer PCM output. 2012-01-06 15:58:46 +00:00
John Maguire b9eec4ce38 Build & link against Chromaprint. 2012-01-06 15:57:51 +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
David Sansome 85f2f087cb Start work on moving everything that uses taglib out into an external process. 2012-01-05 23:24:48 +00:00
John Maguire 9fdfb52225 Use FSEvent-based filesystem watcher on Mac. 2012-01-05 14:51:23 +00:00
John Maguire 96aa95bebd Add filesystem watcher using Mac FSEvents API. 2012-01-04 15:24:53 +00:00
David Sansome 7e60907578 Oops, remove the pot build target from the last commit - it breaks when doing a clean build 2012-01-03 19:30:35 +00:00
David Sansome d3c2788836 Remove the .pot file from source control and add a "make pot" target to just generate the .pot 2012-01-03 19:22:00 +00:00
David Sansome 52a1cc3a08 Remove the global search popup for now until it can be made a bit prettier
(cherry picked from commit 54df30c15d)
2011-12-12 20:50:02 +00:00
David Sansome f762b3787e Derp 2011-12-02 16:58:16 +00:00
David Sansome c0ac798a71 Create a 1.0 release branch, and rework the way version numbers are done everywhere. 2011-12-02 14:48:19 +00:00
David Sansome c7d184c6bd Groovesharkradio.h doesn't need to be moc'd 2011-12-01 14:32:21 +00:00
David Sansome 1ad55e6a1b Fix linking on Oneiric 2011-12-01 09:28:11 +00:00
John Maguire 542faab959 Hopefully fix linking on newer Ubuntus. 2011-11-30 16:50:23 +01:00
John Maguire 7951691a7e Link the right library for dlopen/dlclose on all platforms.
Fixes issue #2443
2011-11-30 15:41:00 +01:00
Arnaud Bienner b9bf35948a Merge branch 'master' of https://code.google.com/p/clementine-player 2011-11-29 13:57:42 +01:00
Arnaud Bienner 1f5ac97934 Add Grooveshark radios 2011-11-29 13:57:35 +01:00
Vadim Zhukov c084d13ff1 Apply downstream OpenBSD patches against projectm. Fixes issue 2277 2011-11-29 11:27:35 +00:00
David Sansome 22e6a649b7 Remove the custom gstspotifytcpsrc and use tcpserversrc ! gdpdepay to receive data. Use a gstreamer pipeline on the other end as well to send data. 2011-11-28 18:45:12 +00:00
John Maguire e9d770a864 Remove pjsip/stun code and make PortForwarder at least compile. 2011-11-28 16:22:13 +01:00
John Maguire 875645ee0c Use Tomahawk script to generate a prettier DMG. 2011-11-28 15:26:22 +01: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 7548919bc1 Remove the resolvers for now - they don't work properly and ought to use the global search. 2011-11-27 22:15:28 +00:00
Arnaud Bienner ceab3bd6f0 Add Grooveshark songs as internet items, when adding them from global search, so user can use all GS custom actions 2011-11-24 00:30:11 +01:00
David Sansome 691cb9a392 Treat URLs specially in the global search widget 2011-11-11 22:11:25 +00:00
John Maguire bd74a9a0e2 Link QCA directories 2011-11-08 00:11:12 +01:00
David Sansome e3b7afbdf2 Add "Your radio streams" global search provider 2011-11-06 15:00:50 +00:00
David Sansome dac6c1bf09 Add a SomaFM search provider 2011-11-06 00:02:32 +00:00
David Sansome 931efb1f70 Add an icecast search provider, refactor a couple of other bits 2011-11-06 00:02:32 +00:00
David Sansome 19a12adf3e Add the QCA include dirs if QCA was found, even if spotify core was turned off 2011-11-05 17:27:10 +00:00
David Sansome c12b3ab399 Verify the signatures of spotify blob files downloaded at runtime. Should protect against MITM attacks, and compromises of our server. 2011-11-05 01:12:28 +00:00
David Sansome a2327c4eb7 Remove some redundant parameters from DigitallyImportedServiceBase and move the subclasses (which are now empty) into the same file. 2011-11-04 22:54:27 +00:00
David Sansome 2b6beb7417 Load the list of sky.fm/di.fm streams using the undocumented API, getting artwork for each stream as well. 2011-11-04 22:31:19 +00:00
David Sansome ce66bdf1e8 Always run uic on optional ui files so we can get translations out. It was supposed to do this already... 2011-11-03 17:19:37 +00:00
David Sansome 63140f83cf Use an undocumented sky.fm/di.fm api to handle premium account logins, allowing us to remove dodgy code to scrape login information for each service individually 2011-11-02 23:55:45 +00:00
David Sansome 08e09ce5dd Add a settings page for global search - doesn't save yet 2011-10-30 18:52:38 +00:00
David Sansome 1f6bc7cd9a Don't update the .po files automatically from the .pot each build (Transifex will do that now). Also add source files that aren't compiled because of options being disabled to the OTHER_SOURCES list (for translation) automatically. 2011-10-29 18:37:30 +01:00
David Sansome 9a739a3346 Add a DBus interface onto the global search engine, and add a KDE krunner plugin that performs global searches in Clementine.
This is optional and is not compiled unless you have the plasma developer packages installed.
2011-10-19 23:17:24 +01:00
John Maguire 20a967a19f Basic working closure implementation. 2011-10-04 18:26:40 +02:00
David Sansome 58e3a3b676 Don't reload di.fm and sky.fm streams all the time 2011-10-01 17:41:28 +01:00
John Maguire dd017e99ee Basic global searching in Grooveshark. 2011-09-30 15:35:09 +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 892f5f1df1 Add search providers for di.fm and sky.fm 2011-09-24 22:49:04 +01:00
David Sansome 0b65aa3b02 Factor the generic parts of the last.fm search provider into a SimpleSearchProvider class 2011-09-24 20:42:33 +01:00
David Sansome cc20d90a7a Last.fm global search provider 2011-09-24 17:01:18 +01:00
John Maguire 0a3b5d3d75 Search for QJson using pkgconfig. 2011-09-20 10:07:55 +02:00
Arnaud Bienner 399829291d Merge branch 'master' of https://code.google.com/p/clementine-player into grooveshark
Conflicts:
	data/data.qrc
2011-09-20 00:37:20 +02:00
Arnaud Bienner 5dfa4f4838 Add the ability to play streaming songs from GrooveShark 2011-09-20 00:26:24 +02:00
David Sansome 7ec059dc13 Add a tooltip action widget (actions don't work yet) 2011-09-18 17:43:53 +01:00
David Sansome 4ac16f0dd4 Add a "tooltip" that shows the songs within each album in the global search results 2011-09-18 00:06:07 +01:00
John Maguire 55fc18fcc7 Improve the behaviour of the search popup on Mac. 2011-09-16 15:48:21 +02:00
Arnaud Bienner bc3f56ae0e Add settings page + login method for GrooveShark 2011-09-13 22:32:10 +02:00
Arnaud Bienner 99fdba877e Merge branch 'master' into grooveshark 2011-09-02 00:35:40 +02:00
Arnaud Bienner 839bb411f2 Make qjson not optional, as we will need it for Grooveshark 2011-09-01 23:48:32 +02:00
John Maguire c2d68fd697 Basic search popup triggered by a global shortcut. 2011-09-01 14:23:16 +01:00
John Maguire 85e101c8a7 Fix the global shortcut grabber on Mac. 2011-09-01 14:10:30 +01:00
David Sansome 8dea8a2664 Add a spotify global search provider 2011-08-29 03:31:12 +01:00
David Sansome cd44c47f7b Sort the results in the popup list, prevent the user from searching for short strings 2011-08-29 03:29:51 +01:00
David Sansome 9370657b50 Started work on a global search for library, with album art.
The idea is that there's a single place to search for music, and it doesn't matter where it is, Clementine will find something playable.
2011-08-29 03:27:47 +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 3be95c9462 Always compile the spotify settings page UI file to fix a build failure when spotify was disabled. Fixes issue 2159 2011-08-15 11:36:06 +01:00
David Sansome dad76b78dd Move all the settings pages to their own widgets and classes 2011-08-14 00:07:10 +01:00
David Sansome 191e23ed13 Remove old references to libarchive 2011-08-10 16:30:36 +01:00
David Sansome 082716e9c9 Don't try to compile audio CD support if libcdio isn't installed. 2011-08-10 16:30:36 +01:00
John Maguire 5fcb3d3d7a Merge branch 'master' into resolvers 2011-08-09 19:30:20 +02:00
Arnaud Bienner f7859f591c Adding CD devices in devices tab. Fixes issue 701. 2011-08-05 02:15:16 +02:00
John Maguire 2bda4966fc Basic working use of resolvers for XSPF playlists. 2011-07-28 17:33:58 +02:00
David Sansome 5c90404915 Sort album covers by image size. Fixes issue 2048 2011-07-26 12:17:28 +01:00
David Sansome a1062eb96f Add sha256 and hmac-sha256 functions 2011-07-23 19:33:00 +01:00
David Sansome dd3eee63e5 Remove python scripting support 2011-07-23 15:32:12 +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
John Maguire e4c8eee7d9 Add lastfm suggester to OTHER_SOURCES for translations. 2011-07-07 14:22:32 +00:00
John Maguire ea3cf5f92d Only build lastfm suggester if we have lastfm.
Fixes issue #2057
2011-07-07 13:36:44 +00:00
David Sansome 7773e98ebf Keep track of some statistics while searching for album covers, and show a statistics dialog at the end. Fixes issue 1921 2011-06-26 15:07:48 +00:00
David Sansome dd98f8abc8 Make the album cover search results list scroll by pixel instead of item, and re-layout the items when any data changes 2011-06-26 15:06:59 +00:00
John Maguire 1df5db5ee3 Add Echoprint library and a new fingerprinting classs that uses it. 2011-06-25 17:30:12 +00:00
David Sansome 2ef9ab6f6e Replace the KCategorizedView with a custom widget that works better. 2011-06-25 16:47:00 +00:00
David Sansome dad22297d1 Add a nyan cat analyzer.
Nyan nyan nyan nyan.
2011-06-22 23:25:08 +00:00
David Sansome 4864d24e42 Only do the Ubuntu Unity hack on Linux 2011-06-22 20:52:49 +00:00
David Sansome 62bd3694ec Remove cover provider factories and refactor everything else to use cover providers directly instead. 2011-06-19 23:15:51 +00:00
David Sansome c6e2981860 Group album cover search results by category 2011-06-19 23:15:29 +00:00
David Sansome fd7d24b11a Add Clementine to the Unity system tray whitelist on startup. 2011-06-18 19:08:09 +00:00
John Maguire 54e9299c08 libgsttag is also required to build clementine now. 2011-06-16 13:49:10 +00:00
Arnaud Bienner 272841ab73 Starting audio CD support. Starts issue 701 2011-06-09 23:08:43 +00:00
John Maguire 69cfd03248 Only build spotify resolver when spotify enabled. 2011-05-31 16:01:33 +00:00
John Maguire e5d991ddaf Add Resolver interface and Spotify resolver. 2011-05-31 15:33:46 +00:00
John Maguire 41e79bea0e Add basics of last.fm suggester and library resolver. 2011-05-31 14:36:28 +00:00
John Maguire 97a8aa54be Use SPMediaKeyTap for global media keys on Mac.
Thanks to: tyler.s.rhodes@gmail.com
2011-05-30 10:09:34 +00:00
David Sansome 147bbb9928 Add some more python bindings 2011-05-19 23:02:15 +00:00
John Maguire 51e031df2b Add class for transcoding a Song into an OGG Vorbis stream. 2011-05-19 16:34:33 +00:00
Paweł Bara d1d177769a cover providers are now recreated every search (this will lead to simpler API of theirs in a moment)
initial migration from SIP -> PythonQt in cover providers
2011-05-17 17:53:36 +00:00
John Maguire 69b2942566 Add dependency so spotify blob is built before clementine. 2011-05-17 11:53:17 +00:00
John Maguire e7f635e507 Maybe fix mac spotify build. 2011-05-16 15:15:02 +00:00
David Sansome 7b84b23366 Add bindings for classes from network.h 2011-05-15 16:12:49 +00:00
David Sansome 368c637ce7 Fix compilation in release mode and disable the python test for now 2011-05-15 15:46:42 +00:00
David Sansome d9bb8ffd8c Add the pythonqt bindings generator and make some bindings for RadioService and UrlHandler 2011-05-15 15:45:49 +00:00
David Sansome 930a2aa2bf Add an interactive Python console to the script manager 2011-05-15 13:44:06 +00:00
David Sansome 7c05b42dcd Add PythonQt to 3rdparty, use it in the python engine instead of SIP/PyQt. 2011-05-15 13:41:54 +00:00
Andrea Decorte 2bcaba28ad Fixed translations when compiling without Spotify support 2011-05-04 18:00:48 +00:00
David Sansome 3deb371537 If the spotify blob isn't installed, try to download it from the Clementine website. Also, make the blob separate from the core Spotify code in Clementine so you can build the core code without building the blob 2011-04-29 19:44:51 +00:00
David Sansome b20d280156 Add a "Did you mean ...?" widget when searching on spotify 2011-04-28 20:48:53 +00:00
John Maguire b45e11712a Correctly copy and fix up spotify blob on mac. 2011-04-28 20:37:13 +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
Paweł Bara fdda938c53 now that we have more cover providers, we're bringing the cover manager and the cover searcher goodness to our last.fm-less users 2011-04-27 19:10:37 +00:00
John Maguire ff7d634fa4 Spotify on mac. 2011-04-26 22:20:11 +00:00
David Sansome e152e3a3e3 Start of some spotify support - builds a binary blob linked against libspotify that Clementine starts as a separate process. 2011-04-25 19:16:26 +00:00
David Sansome ec07d9d46f Don't statically initialise Python extensions on Windows, add some more debug logging 2011-04-24 17:02:32 +00:00
David Sansome 9d52951dea Add a compile time option to show the WIN32 console even outside debug mode 2011-04-24 17:02:26 +00:00
David Sansome 63b6c65b8f Make the script dialog list scroll more smoothly 2011-04-22 18:53:26 +00:00
David Sansome 3eedc916ad Add a new logging system 2011-04-22 16:50:29 +00:00
David Sansome 5ed1fcd5e1 Add a load of options to the transcoders. Fixes issue 415. 2011-04-16 23:04:15 +00:00
John Maguire 18bfa12042 Add the beginnings of an ICE socket implementation.
Currently, it can be demoed using --stun-test and the icedemo from pjsip as the other client.
TODOs:
Add ability to do a full demo using only 2 clementine instances.
Complete session initiation over XMPP.
Add local & port forwarded sockets as options.
2011-04-07 13:38:27 +00:00
Andrea Decorte 886f3d4d6f Double click on a tab to rename it and visual improvements to tab bar.
Fixes issue 1651
2011-04-02 14:46:56 +00:00
Paweł Bara f86b671272 fixing the minimal build 2011-04-02 14:43:50 +00:00
Paweł Bara 032b5f7e48 initial commit of "multiple covers providers" feature:
- simple API for cover providers (both C++ and SIP)
- a new "package" for cover related code
2011-04-02 13:34:06 +00:00
David Sansome e69970709e Add an option to turn off -Werror. Thanks ssuominen@unk.fi 2011-03-29 18:51:16 +00:00
John Maguire d86dce4b96 Add support for Google breakpad on mac. (Uploading crash reports doesn't work yet due to redirect). 2011-03-25 11:38:03 +00:00
David Sansome d50cfaed46 Add google breakpad to 3rdparty, and gather crash reports 2011-03-23 21:53:24 +00:00