Commit Graph

714 Commits

Author SHA1 Message Date
Chocobozzz ded70d6555 Update internals CMakeLits to qt5 2015-04-11 23:24:06 +02:00
Martin Babutzka 258ae281d8 IDv3 tag lyrics support.
Squashed the following commits:

5c723ad commit: Fix: Includes alpha sort
15ac350 commit: Fix: Updated Database::kSchemaVersion to 49.
767a26a commit: Fixed small code style issue. Added schema-49 to data.qrc instead schema-48
bf6aa64 commit: fixup! Modified async handling of CollapsibleInfoPane as recommended by Andreas. Display of IDv2 tag lyrics works now.
c1f97e9 commit: fixup! Added support to read/display the ID tag lyrics in MP3 files:
c946b1d commit: Added support to read/display the ID tag lyrics in MP3 files:

-Added schema to the database to store it
-Added readers/writers for ID tags
-Added readers/writers for the database to the song class
-Added the taglyricsinfoprovider to show the lyrics in songinfo
2015-04-10 21:05:07 +02:00
John Maguire 8d3fd00956 Amazon Cloud Drive support.
Squashed commit of the following:

commit 451a327fabb5f9aba077d93a33d75d8a6a288f5f
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:55:36 2015 +0100

    Revert debug console changes.

commit 52f643c3dc524a837f56268b6da4881187204165
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:49:28 2015 +0100

    Revert extra logging

commit 23645f9fea
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:47:55 2015 +0100

    How did you get there

commit 8153388f19
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:45:12 2015 +0100

    Update copyright headers.

commit fa9e279259
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:43:27 2015 +0100

    Remove logging

commit 47a405543c
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:42:05 2015 +0100

    Show login state correctly for Amazon.

commit 748d88d993
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:28:55 2015 +0100

    Ensure Amazon is connected before serving URLs.

commit 25ec9c65f4
Author: John Maguire <john.maguire@gmail.com>
Date:   Fri Mar 27 14:22:28 2015 +0100

    Refresh Amazon authorisation & follow changes.

commit 27c1a37173
Author: John Maguire <john.maguire@gmail.com>
Date:   Thu Mar 26 18:27:27 2015 +0100

    Revert unneeded OAuthenticator change.

commit 3594af5be1
Author: John Maguire <john.maguire@gmail.com>
Date:   Thu Mar 26 16:52:19 2015 +0100

    Initial support for Amazon Cloud Drive.
2015-03-27 14:56:08 +01:00
John Maguire 705cdf11fc Move ScopedNSAutoreleasePool to ext 2015-03-02 17:51:17 +01:00
Arnaud Bienner 946c0381d1 Don't set thread priority in LibraryWatcher constructor, as this is executed in the main thread.
Do it when thread actually starts (create a new Thread class for this purpose).
Fixes #4523.
2015-02-28 16:44:32 +01:00
Mattias Andersson fc2e4db229 Split the CD ripper into two classes
Separate the cd ripper dialog from the ripper itself.
2015-02-18 20:08:02 +01:00
Mattias Andersson eb8a618197 Move the CD ripper into its own directory. 2015-02-18 20:08:02 +01:00
John Maguire f2e6d665f3 Remove references to libindicate-qt 2015-02-03 13:48:32 +01:00
John Maguire 1a01b825da Remove Discogs support.
Fixes #4735
Downloading album covers now requires per-user access tokens.
2015-02-03 13:10:13 +01:00
David Sansome 3557576a87 Install Info.plist files into ${framework}/Resources as well, to fix code signing on 10.9 (http://stackoverflow.com/questions/19637131/sign-a-framework-for-osx-10-9) 2014-12-26 10:18:23 +11:00
Krzysztof Sobiecki fa9ea6ec5f Fix compilation with moved files in internet/ 2014-12-18 23:35:21 +01:00
Krzysztof Sobiecki 93a286a272 Move files around and make subdirectories inside src/internet, move src/podcasts to src/internet 2014-12-18 00:39:20 +01:00
Krzysztof Sobiecki 970e86aac5 Allows to download multiple podcasts at the same time
A new PodcastDeleter, it deletes podcast episodes
2014-12-10 00:47:52 +01:00
Krzysztof Sobiecki dc669eb603 Fix cpplint.py errors, fix copyright notices in src/analyzers, move src/core/fht* to src/analyzers 2014-11-29 20:07:01 +01:00
Andreas ff172f6ed4 Network remote can now transcode lossless files before sending them to the remote.
- It is configurable in the settings.
- Any format can be chosen that is supported by the transcoder.
- The status of the transcoder is send to the remote.

- Transcoder format settings have now a postfix so we can define mutliple transcoder formats and use them separatly. Here one for the normal transcoder and one for the network remote transcode. You can pass the postfix in the constructor.
- Fixed Transcoder crash (was introduced with the gstreamer1.0 merge, decodebin doesn't have a "new-decoded-pad").
- Transcoder emits the output filename as well on "JobComplete" signal
- Transcoder can now convert a file to a temporary file ("AddTemporaryJob")
2014-11-13 22:31:49 +01:00
John Maguire 4f4c8f6894 Merge pull request #4580 from Chocobozzz/hide_internet_services
Hide internet services
2014-10-31 12:02:29 +01:00
Arnaud Bienner dc0d3436c8 Finish CD integration update to Gstreamer 1.0
Move everything related to CDDA to a seperate class, so we can more easily reuse it in SongLoader
2014-10-26 03:32:37 +01:00
Chocobozzz c54d1baf15 Allow user to hide internet services. Closes #2784 2014-10-15 20:44:09 +02:00
Alan Briolat c69f2e5561 Reuse some work from Alan from pull request #4484 2014-10-07 00:29:46 +02:00
John Maguire 66b2d996d3 Install qt framework Info.plists correctly. 2014-10-01 15:32:31 +02:00
John Maguire b4784e82fd Make Soup check SSL against our shipped root certs. 2014-10-01 15:06:22 +02:00
David Sansome 39d99247a2 gstreamer-cdda is in gst-plugins-base in 1.0 and has a different header name.
This still doesn't work because the API has changed and track listings are
now delivered via a bus message instead of direct access to the struct's
members.
2014-09-22 22:28:53 +10:00
David Sansome a2408f7c0e Merge branch 'master' into gstreamer-1.2
Conflicts:
	src/moodbar/moodbarloader.cpp
2014-09-21 19:39:27 +10:00
David Sansome 50551d987a Rewrite moodbar stuff for gstreamer-1.0:
- Rewrite gstspectrum (1.0) to use FFTW (2x faster) and emit raw magnitude
  values (not log scaled).
- Rewrite the moodbar generation code to be somewhat understandable, and
  do it in Clementine instead of gstreamer.
2014-09-21 19:38:13 +10:00
Chocobozzz ec580cb815 No namespaces for DBus interfaces. Fixes #4401 2014-07-16 15:57:25 +02:00
Chocobozzz 1fc95cb7ed Add Seafile Support 2014-06-03 14:33:07 +02:00
Mark Furneaux 663b7430d8 Add new analyzer "Rainbow Dash"
As requested in SuperUltraCriticalShowstopper request #2685
I have built an analyzer based on Rainbow Dash
...oh god, what have I done...

This will either make some people happy, or is absolute garbage.
2014-05-22 10:33:21 -04:00
John Maguire 712d8ecd8a Remove Growl support. 2014-04-07 14:54:10 +02:00
John Maguire 4ed6f94211 Open the right part of the system preferences for global shortcuts on Mavericks. 2014-04-02 16:27:07 +02:00
John Maguire 30d1c2f8db Remove Ubuntu One support.
http://blog.canonical.com/2014/04/02/shutting-down-ubuntu-one-file-services/
2014-04-02 16:02:00 +02:00
David Sansome 2134e13b53 Make CloudFileServices show logged in state and settings dialog properly in
global search.
2014-03-30 17:11:31 +11:00
David Sansome 9c66528c0f Add a settings page for OneDrive 2014-03-30 16:35:27 +11:00
David Sansome d662d23e53 Maybe fix the make install step in the mac build 2014-03-30 01:21:12 +11:00
David Sansome 1719b1599c Get audio device names on Windows too. 2014-03-29 23:48:26 +11:00
David Sansome 2d7be1502f Get audio device names on OS X too. 2014-03-29 22:44:08 +11:00
David Sansome 6d1dc56a7c Get a list of available audio devices from pulseaudio, and let the user choose
from those in the settings dialog instead of just giving him a text box.
2014-03-29 19:31:38 +11:00
John Maguire 4ab4bbc23f Remove Last.fm radio support.
Fixes #4259
2014-03-28 14:55:04 +01:00
Arnaud Bienner 1b7f99127d Add login to SoundCloud + get user tracks and activties (stream)
Still need to handle playlists and to clean up things (e.g. to check why refresh_token doesn't work and if we can do something about this)
2014-03-26 21:33:27 +01:00
Maltsev Vlad a7b0accd93 Add Vk.com plugin. 2014-03-08 00:58:50 +07:00
John Maguire d309d4ab27 Use c++11 instead of boost where possible. 2014-02-06 16:51:39 +01:00
asiviero 7cebf23bba Added ripcd to optional features, deleted ui_ripcd on destruction, added a warning in case cdio_open returns NULL 2014-01-22 01:45:55 -02:00
asiviero aeb67594ba Merge branch 'master' of https://github.com/clementine-player/Clementine 2014-01-08 02:05:35 -02:00
David Sansome 8416188056 Show a message in the Devices pane on Windows to say that most devices won't work. Fixes #4059 2014-01-05 11:32:07 +11:00
asiviero 58b264e122 Started building interface for Cd ripping as mentioned in clementine-player/Clementine#3490 2013-12-27 03:38:43 -02:00
John Maguire 5a6ea923d0 Try emulating Mavericks' codesign --deep for earlier OS X versions. 2013-12-17 16:15:40 +01:00
John Maguire a43116bd66 Simpler signing of entire app bundle. 2013-12-12 16:24:02 +01:00
John Maguire 4b0d49b61a Add stricter Apple code signing. 2013-12-09 17:27:55 +01:00
John Maguire 4c23072bef Link dynamically against sqlite3 but still use a copy of QSqlLiteDriver 2013-11-22 16:31:41 +00:00
Andreas 90c8929f96 Fix crash when fetching lyrics with the network remote. 2013-10-09 19:33:59 +02: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 cd85b67ebc Make code signing a separate target. 2013-07-10 20:19:28 +02:00
John Maguire f4f9b70f8d Another attempt at getting CMake to escape the Apple developer id correctly. 2013-07-10 18:59:39 +02:00
John Maguire da5c338b53 Escape apple developer id properly. 2013-07-10 17:25:23 +02:00
David Sansome eb20fb5945 Remove all the soruce for WMDM devices. Fixes issue 3748 2013-06-30 08:25:12 +00:00
Arnaud Bienner f245f7ed82 Add a playlistlist view with a helper text 2013-06-29 18:05:03 +02:00
John Maguire 3d434f1c88 Remove iDevice support as it doesn't work well for modern devices and libgpod shows no signs of updating to support them.
Fixes issue #3683
2013-05-17 15:30:56 +02:00
Arnaud Bienner 5e6821dead Add a 'favorite' widget to playlist tab, and keep in playlistlist container only favorite playlists, instead of all playlists. 2013-05-11 23:18:03 +02:00
Andreas 4e2ded9178 - Finished album cover exporter from keirangtp's branch "export-covers".
- Updated export dialog layout.
- Added option to export downloaded and/or embedded covers.

- Auto. cover fetcher and exporter is now cancelable.
- Minor covermanager layout improvements.
- Covermanager shows count of total and missing covers.

Fixed issue 520.
2013-05-06 21:22:05 +02:00
John Maguire 3072a32fde Silence some compiler warnings from Qt headers in clang 4.2 and gcc 4.8.
Fixes issue #3620
2013-04-15 21:44:01 -07:00
John Maguire d21fa8cc67 Add support for Box. 2013-02-12 17:11:18 +01:00
David Sansome 1208ba308f Add a parser for WPL playlists. Fixes issue 3437 2013-02-05 23:19:19 +11:00
Martin Brodbeck d5139ac2b2 Add opus support to transcoder.
Fixes issue #3453
2013-01-28 14:09:31 +01:00
John Maguire fe2fb788d3 Merge branch 'subsonic'
Conflicts:
	data/data.qrc
2013-01-24 17:02:08 +01:00
John Maguire 0b60a17a2b Add MDNS implementation for windows. 2013-01-17 14:11:15 +01:00
John Maguire ffe00ef149 Add tinysvcmdns to 3rdparty 2013-01-17 13:15:16 +01:00
John Maguire 7d09548243 Add mDNS service publishing on Mac. 2013-01-16 15:26:35 +01:00
John Maguire 0e226cc34b Add mDNS service publishing on Linux for the remote control. 2013-01-16 14:56:31 +01:00
Andreas 04ccdbbf08 added version to protocol buffer message
changed client handling
only non public ips can connect (can change that in options)
2013-01-10 21:21:55 +01:00
Alan Briolat 90d2511051 Merge remote-tracking branch 'upstream/master' into subsonic
Conflicts:
	src/CMakeLists.txt
	src/internet/internetmodel.cpp
	src/ui/settingsdialog.cpp
2013-01-09 21:26:32 +00:00
Andreas fe0c1b5206 Changed xml to protocol buffers 2013-01-03 21:40:47 +01:00
Andreas f10292eb95 Added remote control for clementine 2012-12-31 23:37:39 +01:00
John Maguire c57c47ae08 Make skydrive urls playable. 2012-12-13 14:44:59 +01:00
John Maguire c4db401597 More or less working Skydrive authentication. 2012-12-12 18:34:15 +01:00
John Maguire e68a6f9eb8 Factor out oauth redirect & HTTP server logic. 2012-11-30 14:54:23 +01:00
John Maguire 3c9b3d99e6 Read tags from dropbox files. 2012-11-29 20:48:34 +01:00
John Maguire ea8655af83 Add Dropbox service and settings page. 2012-11-29 20:48:34 +01:00
John Maguire 6bf0b4736a Start of dropbox support. Only whitelisted accounts work for now. 2012-11-29 20:48:25 +01:00
John Maguire ffc8d53cdb Add cmake option for Ubuntu One. 2012-11-28 16:51:19 +01:00
John Maguire 334cd1052b Factor out some common functionality between Google Drive & Ubuntu One. 2012-11-28 16:13:10 +01:00
John Maguire 1d20ac4eae Add settings page for Ubuntu One. 2012-11-27 19:56:47 +01:00
John Maguire 24ac9adbe5 Beginnings of playback from Ubuntu One file store. 2012-11-27 18:35:06 +01:00
John Maguire 102ebecaf5 *sigh* 2012-11-19 20:19:48 +01:00
John Maguire c945286e90 Disable deprecation warnings. 2012-11-19 20:08:13 +01:00
John Maguire a12ffa829e Try C++0x instead of C++11 for older compilers. 2012-11-19 19:38:29 +01:00
John Maguire 543a6bf2fa Remove use of linked SAC shim and depend on DLL version (which doesn't exist yet) 2012-11-13 17:04:54 +01:00
John Maguire e5d02fddb6 Enable C++11 for Clementine & libclementine 2012-11-13 17:03:53 +01:00
Veniamin Gvozdikov 957f3823e6 Fix linking clementine on FreeBSD.
Fixes issue #3246
2012-10-31 15:59:54 +01:00
David Sansome 9fae3881ed Add a new "Playlists" tab to the sidebar that contains all the playlists created by or imported into Clementine. The tab bar now contains only "open" playlists - closing a tab closes the playlist without deleting it.
Update issue 1811
Added a Playlists tree view to the sidebar.
2012-10-30 23:04:22 -07: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 d2bb2d7ac8 Stop using deprecated UpdateSystemActivity() on mac. 2012-10-24 16:45:00 +02:00
John Maguire d674d9ecf7 Implement MediaPlayer2.Playlists from MPRIS2.
Fixes issue #3194
2012-10-11 15:38:51 +02:00
John Maguire a56947e356 Add support for new musicbrainz cover art archive.
See: http://blog.musicbrainz.org/?p=1616
2012-10-10 14:45:13 +02:00
John Maguire 8887460cc7 Add a simple database console. 2012-09-26 18:56:48 +02:00
John Maguire 606bf71208 Disable automatic conversions to QUrl from strings. 2012-09-26 17:09:13 +02:00
John Maguire 0fae2e1ae1 Add support for Apple code signing.
Use -DAPPLE_DEVELOPER_ID="<Certificate Common Name>"
2012-09-10 11:02:54 +02:00
John Maguire 27975c7a16 Separate out spotify blob downloader into a new optional component. 2012-09-03 17:38:07 +02:00
Michael Niggli cd6b1a2d7c Support logical operators in the playlist filter box. Fixes issue 700 2012-08-28 23:29:15 +01:00
David Sansome 5940b0ead1 Make SongKick results a bit prettier 2012-08-27 12:25:33 +01:00
David Sansome 4ec6da0570 Track google drive login state better: show the user's email address in the settings dialog and let him sign out. Also remove the drive folder model which wasn't used yet because uploads aren't done. 2012-08-17 21:50:54 +01:00
John Maguire 3e696be0d0 Remove Twitter integration as the API now requires authentication which
makes no sense for us.
2012-08-17 11:04:14 +02:00
John Maguire a55cbc838f Merge branch 'master' into drive 2012-08-09 12:59:09 -07:00
Arnaud Bienner 2bf84f77d9 Add soundcloud in the global search 2012-08-08 23:23:49 +02:00
Arnaud Bienner e69c932577 Update issue 2540
Add basic SoundCloud support.
However, only search in internet tab + listen is done for now.
We should at least add soundcloud in global search.
2012-08-04 15:21:44 +02:00
David Sansome fd1d70c644 Add a directory model for selecting a default upload directory on Google Drive. 2012-07-29 15:06:23 +01:00
David Sansome 9653a45f66 Read Google Drive metadata in the tagreader worker process 2012-07-28 19:35:12 +01:00
David Sansome 165cec1e86 Move some of the Google Drive bits out into a separate client class. 2012-07-28 17:18:03 +01:00
Alan Briolat 92c15f3a5a Merge remote-tracking branch 'upstream/master'
Fixed SubsonicService for new InternetService signature.

Conflicts:
	data/data.qrc
	src/ui/settingsdialog.cpp
	src/ui/settingsdialog.h
2012-07-28 14:10:42 +01:00
David Sansome 51631169fa Show a nicer success page when oauth is complete. 2012-07-27 18:59:03 +01:00
David Sansome 73062bce3d Make Google Drive support optional and add a cmake option for it 2012-07-26 21:23:31 +01:00
John Maguire ecf7998f1c Add URL handler for googledrive URLs and fetch a new temporary
download URL for every play.
2012-07-26 16:35:57 +02:00
John Maguire 517252ccc1 Merge branch 'master' into drive
Conflicts:
	data/data.qrc
2012-07-25 15:36:57 +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 145f1efaf5 Basic support for Google Drive & OAuth. 2012-07-12 14:09:20 +02:00
David Sansome abe8d10b9c Add a compatibility header so liblastfm and liblastfm1 can both be used with the same source. 2012-06-28 18:40:20 +01:00
John Maguire 20d740f385 Port global search & album cover search to QSearchField and remove MacLineEdit. 2012-06-28 11:40:13 +02:00
John Maguire 569c8295db Add qocoa and use it for the playlist search field. 2012-06-28 11:39:43 +02:00
Arnaud Bienner ac936c5374 Search on Grooveshark on the left/Internet tab directly, instead of Grooveshark magic playlist.
Next steps:
- add GS albums search on the left tab
- do the same for Spotify if it's convincing enough
- clean-up magic search playlists
2012-06-27 01:21:57 +02:00
John Maguire 74fe419659 Factor out metatype registration. 2012-06-20 15:07:28 +02:00
John Maguire 86cced782e Add geolocator. 2012-06-20 14:13:15 +02:00
David Sansome b427fc8a24 Merge branch 'globalsearch-tree'
Fixes issue 2238
Fixes issue 2241
Fixes issue 2368
Fixes issue 2375
Fixes issue 2843
Fixes issue 2872
Fixes issue 2938
2012-06-16 21:24:29 +01:00
David Sansome 5e685b2b14 Don't treat @ characters as separators in the LINGUAS cmake option. Fixes issue 2999 2012-06-13 09:58:37 +01:00
David Sansome 9d6b72b4ab Add global search suggestions 2012-06-10 23:05:30 +01:00
David Sansome 97b4298002 Split some bits of GlobalSearchView into a GlobalSearchModel 2012-06-10 21:11:55 +01:00
David Sansome 6e41a20e61 Add a helpful message to the Search view when no query has been entered 2012-06-10 19:00:51 +01:00
David Sansome 41fab25569 Auto-expand tree items and lazy load album cover art 2012-06-10 17:15:32 +01:00
David Sansome 9c36cfa199 Replace the global search widget with a "Search" view on the sidebar. Organise results in a tree automatically. 2012-06-10 16:36:15 +01:00
John Maguire 2da6c40fb5 Add runtime checker for gsignal callback arguments. 2012-06-08 14:27:38 +02:00
John Maguire 1f836d8e29 Merge branch 'songkick'
Conflicts:
	data/data.qrc
	src/songinfo/artistinfoview.cpp
2012-06-04 14:41:47 +02:00
John Maguire 2888701386 Add support for Twitter timeline in artist info. 2012-05-29 17:26:34 -07:00
John Maguire 21419765d3 Add beginnings of support for requesting events calendar for an artist
from songkick (waiting on API key).
2012-05-29 16:31:27 -07:00
David Sansome b03563f317 Make it possible to compile out moodbar support 2012-05-27 21:33:05 +01:00
David Sansome 638a4b9739 Bundle the gstreamer moodbar plugin, with a patch that protects calls to fftwf_plan from multiple threads. 2012-05-27 17:30:58 +01:00
David Sansome 19c3e1d5ec Add a Mood column to the playlist 2012-05-27 16:46:16 +01:00
David Sansome f1dee1171b Move the moodbar rendering bits into another class 2012-05-25 23:56:55 +01:00
David Sansome e3cfd64764 Render the moodbar data in the slider widget, and write .mood files alongside music files. 2012-05-25 22:02:10 +01:00
David Sansome 51229b88c5 Create or load moodbar data for songs 2012-05-25 17:18:07 +01:00
David Sansome 6677d0fe30 Remove Android remote control support for now 2012-04-13 15:01:22 +01:00
David Sansome 119c9c27ac Detect libimobiledevice 1.1.2 and use its new "udid" field instead of "uuid". 2012-03-27 21:24:38 +01:00
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