Commit graph

346 commits

Author SHA1 Message Date
Adam Voss eda8706260 Attempted compromise for is_html RegEx 2017-04-18 09:45:38 -05:00
Eric Le Lay 01e0655943 schema v7: update description and description_html fields
1. initialize description_html when description used to contain HTML
 2. strip HTML tags from description
 3. reset last updated from feed to force fetch description/description_html
2017-04-17 19:19:28 +02:00
Adam Voss a6208617df Merge Merge pull request #242 from vossad01/soundcloud-default-https
Use https urls for SoundCloud requests
2017-03-25 23:10:09 -05:00
Adam Voss 4163d5a45a Merge Merge pull request #200 from mexicarne/master
Fix detection of wireless interfaces in FreeBSD
2017-03-25 19:35:00 -05:00
Adam Voss ef915dd3b6 Use https urls for SoundCloud requests 2017-03-19 09:30:06 -05:00
Adam Voss d2a9d58524 Changes since Python3 does floating point division
This was done based on a manual search for the '/' character.  No efforts were made to try to run all affected code paths.
2017-02-14 08:53:47 -06:00
Ruslan Makhmatkhanov b67247dc23 Fix detection of wireless interfaces in FreeBSD
At least in FreeBSD status of wireless interface is show as

status: associated

not

status: active

So unix_get_active_interfaces() routine fails here. Add 'associated' to regex
to fix up things.
2016-12-29 21:02:24 +03:00
Adam Voss bfcf1c5e1a Fixes some exceptions related to bytes vs str handling 2016-12-07 12:40:12 -06:00
Eric Le Lay 592146cd76 urlopen().read() must be converted to string
when it's searched by re, etc.
FIXME: still work to do to validate some uses are ok
2016-11-26 15:28:15 +01:00
Thomas Perl de69c4b770 Remove unused parameter in util.sanitize_filename() 2016-11-21 23:42:14 +01:00
Thomas Perl dd9ca2a386 Remove util.sanitize_encoding() 2016-11-21 23:40:05 +01:00
Thomas Perl 8802b546ba Remove debug print 2016-11-21 23:34:23 +01:00
Thomas Perl 58d1da9f71 Update unit tests, doctests and makefiles 2016-11-21 23:32:50 +01:00
Thomas Perl e020448e14 More Python 3 fixes (Soundcloud, util) 2016-11-21 23:19:20 +01:00
Thomas Perl 5a7c30b359 Port to Python 3 2016-11-21 23:13:46 +01:00
Thomas Perl 2f5029f151 Merge branch 'master' into gtk3 2016-11-20 14:59:11 +01:00
Thomas Perl 746b7590bf Allow Python buffer objects through util.convert_bytes() 2016-11-20 11:50:05 +01:00
Thomas Perl ef216d8694 Merge branch 'podcastparser' into gtk3-podcastparser 2016-11-18 14:48:56 +01:00
Thomas Perl 4189cf48fb Port from feedparser to podcastparser 2016-11-18 14:47:15 +01:00
Thomas Perl 9b8dbdc3a6 New try to do a minimal Gtk+3 port 2016-09-25 14:31:58 +02:00
Thomas Perl 826864daaa Fix class naming 2016-08-21 22:59:33 +02:00
Mathias Rav 81cbe1fba7 Move the code that uses html5lib under the html5lib guard 2016-08-11 09:53:36 +02:00
Mathias Rav a6f284331d Refactor, remove diffing code and extract_hyperlinked_text_{1,2} 2016-08-11 09:51:56 +02:00
Mathias Rav 6f2db07d76 Try importing html5lib and log a warning if it fails 2016-08-11 09:51:56 +02:00
Thomas Perl 334eaff8e3 Remove error message when html5lib not available 2016-08-08 20:10:35 +02:00
Mathias Rav 6a9a47a7b7 Fix NameError in ImportError handling 2016-08-08 20:04:14 +02:00
Mathias Rav 9cc600208f Handle HTML entities using name2codepoint 2016-08-08 20:00:28 +02:00
Mathias Rav 33af39d69d extract_hyperlinked_text: Compare the two algorithms and output their difference 2016-08-08 19:51:29 +02:00
Mathias Rav f74b20113b Implement extract_hyperlinked_text_2 2016-08-08 19:51:15 +02:00
Mathias Rav 87ce8447e3 Refactor, renaming extract_hyperlinked_text -> extract_hyperlinked_text_1 2016-08-08 19:50:51 +02:00
Mathias Rav c7ab9f6f70 Use html5lib to find hyperlinks in the HTML of the podcast show notes 2016-08-07 12:24:03 +02:00
Thomas Perl 28075c09dd Remove QML UI 2016-02-03 19:54:33 +01:00
Thomas Perl 36eefc8a30 Update copyright years (2016) 2016-01-15 15:22:52 +01:00
Thomas Perl 169102de09 Device sync: Only fail if we can determine free disk space (bug 2052) 2015-12-16 09:33:21 +01:00
Thomas Perl aa72634950 Update copyright years (2015) 2015-05-24 19:33:39 +02:00
Thomas Perl 8c537c703c gpodder.util: Fix timestamp issues (bug 1983) 2015-02-15 11:55:32 +01:00
Thomas Perl ca7586168b gpodder.util: Don't force password to be lowercase (bug 1942) 2014-08-25 12:57:41 +02:00
Thomas Perl 91a042b1f6 Sailfish: Remove obsolete, Qt4-based Sailfish QML UI
The current Sailfish UI is maintained as part of gPodder 4 in
gpodder-core, gpodder-ui-qml and gpodder-sailfish. The code
removed here was part of the old, Qt4-based Sailfish Alpha
SDK-based port that was still using PySide and Python 2.
2014-06-28 13:48:13 +02:00
Thomas Perl 2728172b28 gpodder.util: Fix a bug in delete_empty_folders
The bug could have caused an empty directory in the current working
directory to be removed if an empty folder of the same name exists in
the download directory.
2014-05-23 15:19:38 +02:00
Thomas Perl f83e64e169 gpodder.util: Fix a bug in the delete_empty_folders code 2014-05-17 11:42:05 +02:00
Ricardo Miranda 142214d9eb CLI: Delete empty folders on download, update, pending (bug 1601) 2014-05-17 11:08:34 +02:00
Thomas Perl d81d7617d3 gpodder.xspf: Remove broken plugin 2014-03-17 19:58:55 +01:00
Thomas Perl 553e35f219 Update copyright years (2014) 2014-02-27 21:55:13 +01:00
Wes Morgan 2e6ea217dc gpodder.util: Fix FreeBSD network detection (bug 1730)
The unix_get_active_interfaces() function only partially works on
FreeBSD. Wireless interfaces do not have a status of "active", but
rather "associated".
2013-12-07 12:54:51 +01:00
Thomas Perl bda982be02 Update copyright years for 2013 2013-03-05 16:38:48 +01:00
Thomas Perl 98a25e2096 Util: Fix unit test (use real unknown extension) 2013-03-05 16:34:43 +01:00
Thomas Perl 39daccbd92 QML UI: Initial support for Sailfish Silica 2013-03-01 11:19:18 +01:00
Thomas Perl 9abcf6a3cc Cover downloader: Add 5-second connection timeout 2013-02-26 21:46:38 +01:00
Thomas Perl 00f80f7130 Util: Improve parse_time() 2013-02-17 19:00:17 +01:00
Thomas Perl 60e541fde8 Util: Python 2.6 compatibility fixes 2013-01-30 19:07:43 +01:00
Thomas Perl 9386d904f2 Offline mode: Logic fixes (bug 1730) 2013-01-29 18:38:47 +01:00
Thomas Perl 72c028dc25 Make online detection a bit smarter (bug 1730)
If we don't have "ifconfig" and "ip" assume we're online
(because we can't determine that we're offline), and if
detecting the network connection fails for some reason,
also assume that we're online. This avoid bogus "you're
offline" messages while still giving good feedback to
users who try to check for new episodes while offline.
2013-01-29 18:26:07 +01:00
Olivier Brisson 710ec086fc Util: Add interface detection for FreeBSD (bug 1730)
I've also been hit with this bug on FreeBSD where
iproute2 is not available.

FreeBSD 8.2-STABLE i386

I wrote a little patch to make gpodder work on FreeBSD.
2013-01-05 01:51:55 +01:00
Thomas Perl cd851c5429 Util: Improve parse_time() function 2012-12-29 19:01:30 +01:00
Bernd Schlapsi 6ebad7d672 Add support for the opus audio codec (bug 1734) 2012-12-29 14:20:30 +01:00
Thomas Perl b848f79369 Util: Parse HH:MM-style strings with HH > 59 2012-12-29 01:26:57 +01:00
Thomas Perl ce461ff90d gpodder.util: Use gpodder.ui.win32 for new code 2012-12-17 15:34:08 +01:00
Thomas Perl faa9bb7916 Merge pull request #31 from smunkel/master
Dont warn about unknown file if it is a system file (Bug 1712)
2012-12-17 06:33:06 -08:00
Thomas Perl f6c66134b9 Merge pull request #29 from brot/master
Improvements to the extension system
2012-12-17 06:31:51 -08:00
Sean Munkel 2b9ef81bca Dont warn about system files in windows (bug 1712) 2012-12-07 14:02:21 -05:00
Bernd Schlapsi d5eae16b9f Improvements to the extension system
- Add category metadata in every extension
- Show this category in the extension list gui
- Add "mandatory_in" and "disable-in" configuration for an extension
- Add Ubuntu unity check to enable/disable unity specific extensions
- Move "gpodder.win32" and "gpodder.osx" setting to the "gpodder.ui" namespace to be able to use it in the extensions category settings
- Only show metadata information in the right-click dialog of an extension
2012-12-07 10:30:28 +01:00
Thomas Perl 831cbde7fc Util: Python 2.6 compatibility fix 2012-11-23 12:03:55 +01:00
Thomas Perl cdf27fe5f1 Linux: Detect PPP as Internet connection (bug 1702)
PPP connections on Linux have state "UNKNOWN", and are
therefore not detected as such. We fix this now by assuming
that all "UNKNOWN" connections are actually working Internet
connections, and filter the loopback interface (which is also
an "UNKNOWN" connection).

Thanks to Sudaraka Wijesinghe for the bug report, initial
patch and testing/feedback.
2012-11-03 13:43:15 +01:00
Eric Le Lay 41b273db45 Offline mode detection for OS X (bug 107) 2012-10-23 12:41:47 +02:00
Thomas Perl e3f5360073 Basic Offline mode support (bug 107)
Detect network connections on Linux (still need to find a way to
implement it for Windows and OS X - on these platforms, this
implementation acts as if the connection is always available).

We might need to use this in more places in the code, but for starters
this should work nicely.

The Linux implementation assumes the "ip" command is available.
2012-10-13 13:52:14 +02:00
Thomas Perl 61f2cfa379 QML UI: Remove remaining Maemo 5 (Fremantle) support
After a year of basically no work towards Maemo 5 support,
I consider gPodder 3-on-Maemo 5 something that we won't ever
do, so the remaining codes goes. This also cleans up some
dead code in the Gtk UI that's been sitting there.

If anybody wants to step up and do something about that, be
my guest. If anything, I'd assume that if anything on the N900,
gPodder 3-on-Nemo Mobilemight be feasible, and in that case, it
should be "just like Harmattan" in most ways.
2012-09-15 20:22:06 +02:00
Bernd Schlapsi 82d36f368c First changes for the flattr integration to better work when offline
Better flattr integration when offline (bug 1576)

Reset the worker_thread variable when the worker thread is finished (bug 1576)

change the name of the flattr cache database
2012-09-02 17:18:05 +02:00
Thomas Perl f1b4df19a7 Util: make object_string_formatter more robust
Based on an initial patch by Alessandro Guido, but
updated to conform to PEP-8. Also added 2 doctests.
2012-07-30 21:58:04 +02:00
Bernd Schlapsi beaf1a6d69 Flattr integration (bug 1576) 2012-07-13 13:00:39 +02:00
Thomas Perl dc06483bbd Threading: Use util.run_in_background to spawn threads
This makes it easier to check where threading is used
and will allow us to better handle creation of threads.
2012-07-10 13:52:34 +02:00
Joseph Wickremasinghe 2774142f8f Added device sync using 'Downloads' tab to show progress 2012-07-09 20:25:37 +02:00
Thomas Perl 181d38dd76 Various extension-related fixes 2012-03-27 01:32:20 +02:00
Bernd Schlapsi 5a2c5e358b corrected two small errors and removed two extensions 2012-03-22 14:53:24 +01:00
Thomas Perl c9d5e7208d Cover art: Unified download manager (bug 1288) 2012-03-05 10:44:19 +01:00
Thomas Perl bded8424eb Windows: Check for software updates (bug 1569)
The check can be carried out on Linux and OS X
as well, but it's mainly targetted at Windows
users, as Linux users will usually get updates
via package repositories. Only for the Gtk UI.

By default, the check is only enabled on Windows
and can be disabled manually via the config editor.
2012-03-03 21:14:42 +01:00
Thomas Perl 9f58b8eda8 Write debug output to logfile (bug 1460)
Also, various clean-ups around the logging mechanism (remove
gpodder.ui.desktop, etc..) needed to make the logging work without
problems.
2012-03-02 09:03:01 +01:00
Thomas Perl a0e9499b67 Cover art: Add fallback artwork for QML UI 2012-02-28 12:06:35 +01:00
Thomas Perl 4f27e3571d Python 3 compatibility fixes (+ QML UI support)
Fix some issues when using gPodder with Python 3.
This also fixes problems with gPodder's QML UI, so
PySide and the QML UI are now working with Python 3.
2012-02-24 16:58:05 +01:00
Thomas Perl 03772ddcd7 Extensions: Implement UI restriction metadata
Extension scripts can now define for which UIs of
gPodder they work. This can be used to e.g. disable
certain extensions when the CLI is running.
2012-02-21 10:14:23 +01:00
Thomas Perl ca45890b6a Cleanup/simplify extensions system and GUI 2012-02-20 23:55:36 +01:00
Bernd Schlapsi c83994b4b0 worked on the review feedback from thp 2012-02-20 21:37:20 +01:00
Bernd Schlapsi f73a1750c5 add work for the new extension system (bugs #1491, #1500, #1555) 2012-02-20 21:37:20 +01:00
Jonas Kölker 7da85d30a0 CLI: Implement OPML export/import (bug 1303) 2012-02-06 16:54:37 +01:00
Thomas Perl 990cebe9b9 First try on the new JSON-based config module 2012-02-04 19:21:51 +01:00
Thomas Perl 9728fb6236 Util: convert_bytes shouldn't convert long values
Add long to the list of types that should not be
converted to unicode.
2012-01-21 15:37:43 +01:00
Thomas Perl 5411f3fc2f Python 3: Initial support for Python 3 (CLI)
This changeset makes gPodder's codebase convertable
to Python 3 using the "2to3" utility. Right now, only
the CLI module (bin/gpo) has been tested.

See the README file for instructions and remarks.
2012-01-10 13:47:20 +01:00
Thomas Perl 5205a4b71d Update copyright years (add 2012) 2012-01-09 21:19:24 +01:00
Thomas Perl 0df167ff3e Auth: Allow "@" in login username for feeds (bug 1521)
Thanks to Eric Smith for reporting this issue and
providing a login to help test and debug this bug.
2012-01-09 14:45:33 +01:00
Eric Le Lay 85ea863c94 OS X: Use "open" to open files on Mac OS X (bug 1482) 2011-11-12 10:48:12 +01:00
Thomas Perl a2c2bafa7b Util: Improve Windows support in find_command() 2011-11-05 21:22:21 +01:00
Thomas Perl 4582c98cfb Fix copyright year in util.py 2011-10-19 14:00:38 +02:00
Neal H. Walfield afc1b072c0 Implement util.idle_add for multi-threaded Qt 2011-10-17 12:59:49 +02:00
Thomas Perl 3b64aff2c4 Add Qt support to gpodder.util.idle_add 2011-10-12 12:25:08 +02:00
Thomas Perl a1253753c3 Remove conditionals on gpodder.ui.desktop
The only place where the Gtk UI is used right now
is on the Desktop, so avoid unnecessary checks.
2011-09-19 10:20:04 +02:00
Thomas Perl 69b38badb4 More cautious use of redirect URLs for YT and SC
For YouTube and Soundcloud feeds (among others), we try
to avoid renaming downloads even for HTTP redirects,
because the initial filename that we have is usually okay.
2011-09-18 22:04:33 +02:00
Thomas Perl c077f38b8c Title-related changes, better sanitization (bug 1351) 2011-08-08 13:06:20 +02:00
Thomas Perl 714251a7a9 Various fixes to download file/folder handling 2011-08-07 23:39:46 +02:00
Thomas Perl 2ceba6d99f Support for YouTube playlists 2011-08-05 23:58:55 +02:00
Thomas Perl 7fef70e658 Remove support for Fremantle Gtk+ UI
We will only support the QML UI on Fremantle in "tres".
2011-07-16 18:35:14 +02:00
Thomas Perl 2402955bc5 Remove unused functions from gpodder.util 2011-07-15 17:35:43 +02:00
Thomas Perl 8e87300c04 Logging: Deprecate liblogger, use standard logging module 2011-07-15 16:32:06 +02:00
Dov Feldstern 505ea625c0 Support %p (position) in player command (bug 1140) 2011-07-05 16:08:25 +02:00
Thomas Perl 6a15e7ceb4 Normalize URLs without path to "/" as path
This is the same way that mygpo-feedservice and
the mygpo web service normalize feed URLs.
2011-05-09 12:34:23 +02:00
Thomas Perl 30d31a6f75 Improve normalizing of feed URLs
Make sure that domain names are always lowercase.
2011-05-07 18:52:33 +02:00
Thomas Perl 521238cbd3 Win32: Fix issues with backslashes in commands 2011-04-08 14:16:17 +02:00
Thomas Perl 4376057001 Update copyright years 2011-04-01 18:59:53 +02:00
Thomas Perl fa169718d1 Mac OS X: Avoid exit when set locale fails 2011-03-03 13:09:23 +01:00
Thomas Perl 4414616b43 Remove gpodder.ui.maemo / replace with ui.fremantle 2011-02-01 18:23:37 +01:00
Thomas Perl 61b3179a1b Remove support for Maemo 4 (Diablo) 2011-02-01 17:59:00 +01:00
Thomas Perl 495b1658f5 Add support for file:// URLs for feeds (bug 1229) 2010-12-16 19:24:06 +01:00
Thomas Perl b875481241 Remove broken iTunes podcast code (bug 1218) 2010-12-06 13:06:32 +01:00
Thomas Perl a31fe42eb0 Use dict-based format strings for numbers (bug 1165) 2010-11-22 21:52:58 +01:00
Thomas Perl 2e3ee6f9fa Remove broken doctest for run_external_command 2010-10-10 14:06:58 +02:00
Vladimir Voroshilov 54cf803159 Make date formatting locale-aware (bug 663) 2010-09-26 23:42:05 +02:00
Thomas Perl b50ee225d0 Better OS filesystem encoding detection 2010-08-23 22:48:36 +02:00
Thomas Perl 84b00c8cc1 Basic support for FM4 XSPF playlists 2010-08-20 22:44:06 +02:00
Thomas Perl 82e5f51768 Playback multiple files on Maemo (bug 1037)
Create a temporary M3U playlist and send its
filename to the Nokia Media Player, as this
is the only way to open multiple files at once
with the built-in Media Player.
2010-07-18 20:55:08 +02:00
Thomas Perl 505ac444e2 Maemo 4: Support for sending files via Bluetooth 2010-07-05 20:46:25 +02:00
Thomas Perl bcde6ca393 Fix credentials-with-space bug (bug 1065)
Spaces in username or password for HTTP auth were
quoted in a wrong way (quote_plus), which made the
rest of the code not decode the URL correctly.

This patch makes quoting of spaces work correctly
and produce URLs that have correct semantics. Unit
tests were also added to verify this special case.
2010-07-02 21:37:59 +02:00
Thomas Perl 7c20ffd167 Determine episode duration (bug 811)
This patch adds two methods for detecting the
episode length (time units, not bytes):

 * iTunes-specific "duration" in the RSS feed
 * GStreamer-based length detection after download

The patch also adds duration information to the
tooltip in the episode list as a first step for
displaying this information in the UI.
2010-06-04 20:43:38 +02:00
Thomas Perl cf44f7c30e Code cleanup: Remove unused imports 2010-05-17 18:26:13 +02:00
Thomas Perl e6158c4f17 Fix "Download from gpodder.net" (Maemo bug 9093)
Downloading subscriptions from gpodder.net after
a fresh re-install should now be possible. All
subscriptions from the user will be shown in the
OPML selector after logging in to gpodder.net.
2010-05-12 13:38:31 +02:00
Thomas Perl cd609dc318 gpodder.net device type auto-detection
This can obviously be extended to support more
platforms and give better results. For now, only
Maemo and Linux (Laptops, via ACPI battery) are
supported.
2010-05-03 20:11:12 +02:00
Thomas Perl 9c8fd358c3 Simplify delete_file in gpodder.util 2010-04-30 13:22:50 +02:00
Thomas Perl ccf590328e Better detection for wrong file extensions
This fixes issues where previously downloaded
episodes would not get their extension fixed,
because the mime type does not change, although
the filename is still wrong.
2010-04-09 02:28:11 +02:00
Thomas Perl 23992c42f9 Fix YouTube filename extensions on Maemo 5 2010-04-09 01:57:05 +02:00
Thomas Perl a02f6774f5 Fix issue with floating-point time values
Formatting a time span only works if the
input data is an integer value.
2010-03-02 00:45:47 +01:00
Thomas Perl 25210dfc2d Fix streaming for Maemo 5 (bug 8861)
Make sure that only local file names are
prefixed with "file://" when invoking the
media player (or other viewer apps).
2010-02-07 23:25:36 +01:00
Thomas Perl f5b6cebfad mygpo: Better integration + Fremantle UI
Replace the JSON-based persistence layer with
"minidb", a SQLite-based object persistence
layer, and make the UI request changes from
the API client when it thinks it fits best.

Also, add a Hildonized UI of the mygpo settings
dialog for Maemo 5.
2010-01-28 17:39:10 +01:00
Thomas Perl 7287ddb0a6 Better file opening (Maemo bugs 7162, 5588)
Make sure to quote filenames so that '#' in
filenames does not make the media player fail.

Also add support for opening PDF files with
the PDF viewer and image files with "Images".

Thanks to Bartosz Taudul and Brian May for
the bugs reports on bugs.maemo.org :)
2010-01-25 14:25:05 +01:00
Thibauld Nion 64fcdd83ad Support 'image' in file_type_by_extension (bug 740)
file_type_by_extension formerly filtered out content
that was not a video nor an audio file.
2010-01-07 22:10:37 +01:00
Thomas Perl afe9581c76 Remove "feeds2" from FeedBurner URLs
It seems like feedburner has stopped
redirecting "feeds.feedburner.com" to
"feeds2.feedburner.com", so we should
update the URLs accordingly.
2010-01-07 22:07:14 +01:00
Thomas Perl 181564f1b7 Add 2010 to the years in copyright notice
The following command has been used:

grep -r '2005-2009 Thomas Perl and the gPodder Team' * | cut -d: -f1 |
xargs sed -i -e 's/2005-2009 Thomas Perl and the gPodder Team/2005-2010
Thomas Perl and the gPodder Team/g'
2010-01-02 17:35:42 +01:00
Thomas Perl 63dc89e6f4 Fix gettext plural forms (Maemo bug 6885)
Implement proper plural forms for languages
with more than two plural forms by using
ungettext and properly using it for plurals.

Thanks to Tomasz Dominikowski for reporting.
2009-12-21 23:18:00 +01:00
Thomas Perl 6ab9856fe9 Configurable preferred YouTube fmt_id (bug 578)
Users can now set their preferred YouTube fmt_id
for downloads of YouTube videos. The default has
been changed to 18, because that's a known-good
video format that should work on most machines.
2009-12-17 13:08:55 +01:00
Thomas Perl 6fd48bbeef Detect .mp4 as video extension 2009-12-06 01:09:52 +01:00
Thomas Perl 3bf38383f7 Custom handler support + Soundcloud integration
This is still a work-in-progress, but it works
fine for me so far. Still needs lots of work to
be more accessible and robust.

You can use the "sc:" prefix to add Soundcloud
users (or use http://soundcloud.com/username).
2009-12-04 00:14:29 +01:00
Thomas Perl dc849c1bec User-agent header for all HTTP requests (bug 626)
This includes shownotes images (from the HTML widget),
OPML downloads, YouTube resolving and my.gpodder.org.
2009-11-14 02:09:21 +01:00
Thomas Perl 9f227a282d Add support for the "yt:" prefix shortcut
Another useful shortcut to subscribe to YouTube
users. Instead of typing the full URL, just use
"yt:<username>" and get the correct feed added.
2009-11-04 14:58:23 +01:00
Thomas Perl 5115f7119e Add "fb:" prefix shortcut for feed URLs
It's now possible to have some prefix shortcuts
when adding URLs. This should make the life of
lazy typists easier, especially on mobile devices.

At the moment, the only available prefix is "fb:".
If you want to add a FeedBurner URL, simply take
the name of the podcast and prefix it with "fb:".

Added some doctests to normalize_feed_url.
2009-11-03 19:15:16 +01:00
Thomas Perl 4af2e0682f Fix problems with get_real_url() (bug 573)
Don't fail hard when we cannot get the real
URL of an episode while searching for files.

Only partially fixes bug 573, as the reporter
has posted the traceback in the wrong bug.
2009-09-28 16:03:15 +02:00
Thomas Perl 208b69c655 Fix file and website opening on Maemo
This makes the media player and web browser integration
work on Fremantle/Maemo 5 and makes it work better on
Diablo (only single notification; better browser start).
2009-09-22 16:36:07 +02:00
Thomas Perl 1d0eea4465 First cut of Fremantle (Maemo 5) support
Use gpodder.ui.{desktop,diablo,fremantle} for
detecting which environment and interface to use.

Fremantleized versions of the episode selector
and podcast directory windows roughly done.
2009-09-15 19:49:28 +02:00
Thomas Perl a23a779a71 Better file type detection using mimetypes
Allows for some exotic formats to be detected as
audio or video files in addition to hardcoded ones.
2009-09-08 17:29:55 +02:00
Thomas Perl 996b2bcda2 Improve HTTP authentication handling (bug 525)
Add some additional code and checks to make the use
of password-protected podcasts more stable and easier
to use. Thanks to Dan Ramos for the bug report.
2009-08-24 13:04:11 +02:00
Thomas Perl 7f88f06bc9 Fix year out-of-range problem in format_date (bug 537)
If datetime.datetime.fromtimestamp() does not work,
simply return "None" in gpodder.util's format_date().

Thanks to phq for the fix suggestion.
2009-08-24 01:13:10 +02:00
Thomas Perl bfcef518f5 Move GTK+-related functions from gpodder.util to gtkui.model 2009-08-14 00:14:06 +02:00
Thomas Perl 33e585dc12 Support for playback of multiple files (bug 120)
If the player supports it (%U, %F or at least NOT %f, %u),
then only run one command for multiple selected episodes
and in this way support the playback of multiple episodes.
2009-07-13 15:32:46 +02:00
Thomas Perl f327f5e39a Use proper emblems for the episode list (bug 467)
Fix missing icons in Win32 and use better emblems
for depicting new, locked and missing downloads.
2009-07-13 13:13:35 +02:00
Tim Gilbert 93f6f31c39 Add free disk space detection on Windows (bug 468)
I'm attaching a patch against the current git tree which should fix
this, based on the information here:

http://mail.python.org/pipermail/python-list/2003-May/203223.html

Note that the user will need to have the Python win32 extensions
installed - see http://sourceforge.net/projects/pywin32/ - and I have no
idea how to include these in the frozen Python binary which is included
in the win32 distribution of gpodder.  The patch reverts back to the old
behavior if it can't find the win32api.
2009-07-12 16:14:15 +02:00