Commit graph

448 commits

Author SHA1 Message Date
auouymous 36dbad9c53 Refactor ProgressIndicator.
Add on_ticks() and max_ticks to simplify code using progress indicators.
And support final ticks to set progress to 100% before a final long
operation.

Change interval from 100ms to 250ms, to allow more time to be spent on
the operation.
2023-01-03 05:58:42 -07:00
auouymous d9f05e666a Only update downloads list when no tasks were queued.
Avoids a double update when there are queued tasks.
2022-12-17 01:54:03 -07:00
auouymous 58e678b33f Use length of tasks, not episodes, for download progress indicator. 2022-12-16 18:17:09 -07:00
auouymous 9babf0eb44 Set download list state only once after batch queueing tasks.
Queueing thousands of tasks happens faster when update_download_list()
is not called for each one.
2022-12-16 16:04:33 -07:00
auouymous e05ba2e929 Don't show episodes without URLs in "new episodes available" when
subscribing.
2022-12-15 06:34:00 -07:00
auouymous 526c335662 Rename showEpisodeDescription's internal names to match other items. 2022-12-15 03:34:24 -07:00
auouymous b842e86101 Organize View menu.
And move all-episodes and sections settings from preferences to View
menu.
2022-12-15 02:46:18 -07:00
auouymous d2253d4acd Cache episode list config values.
Decreases episode list update time by 5% for new episodes.
2022-12-15 00:44:37 -07:00
auouymous 7aa649e6d1 episode_list_columns -> ui.gtk.episode_list.columns 2022-12-08 15:57:46 -07:00
auouymous 2daa5e9550 podcast_list_hide_boring -> ui.gtk.podcast_list.hide_empty 2022-12-08 15:56:26 -07:00
auouymous fcfb9efe1a episode_list_view_mode -> ui.gtk.episode_list.view_mode 2022-12-08 15:54:24 -07:00
auouymous fe969e8c15 podcast_list_sections -> ui.gtk.podcast_list.sections 2022-12-08 15:52:23 -07:00
auouymous 8ca292e5a5 podcast_list_view_all -> ui.gtk.podcast_list.all_episodes 2022-12-08 15:50:56 -07:00
auouymous bcf84cbdf7 auto_update_feeds -> auto.update.enabled 2022-12-08 15:47:33 -07:00
auouymous f19632c426 auto_update_frequency -> auto.update.frequency 2022-12-08 15:46:11 -07:00
auouymous 599682f4f2 auto_download -> ui.gtk.new_episodes 2022-12-08 15:43:51 -07:00
auouymous 816b5c15f3 show_toolbar -> ui.gtk.toolbar 2022-12-08 15:39:34 -07:00
auouymous b39edcfe83 max_episodes_per_feed -> limit.episodes 2022-12-08 15:37:36 -07:00
auouymous c6695f5b69 episode_old_age -> auto.cleanup.days 2022-12-08 15:25:26 -07:00
auouymous 04cb6583da max_downloads_enabled -> limit.downloads.enabled 2022-12-08 14:47:03 -07:00
auouymous 8eb60b8ccf limit_rate -> limit.bandwidth.enabled 2022-12-08 14:45:24 -07:00
auouymous 39f0376c81 limit_rate_value -> limit.bandwidth.kbps 2022-12-08 14:41:32 -07:00
Teemu Ikonen d87ac85506 Fix 'W504 line break after binary operator' flake8 warnings
Fixed by running

autopep8 -i -r --select=W504 .

and some hand tuning.
2022-11-14 18:32:09 +02:00
Teemu Ikonen 6bd0bb0530 Remove unused imports and pass statements
Fixes flake8 error F401.
Most errors were fixed by running

autoflake -i -r --remove-all-unused-imports .

which also removes unnecessary 'pass' statements, some by hand-editing.
2022-11-14 18:32:09 +02:00
auouymous 1b9ed37064
Merge pull request #1382 from tpikonen/ytdl-rename
Fix yt-dlp output file name
2022-11-14 04:08:49 +00:00
auouymous 9bdc9d966e
Merge pull request #1303 from auouymous/setting-to-disable-find-as-you-type
Add setting to disable find-as-you-type.
2022-11-09 03:42:05 +00:00
Teemu Ikonen 44befb77f1 Add can_preview to play_or_download() output
Use it to decide if 'Preview' is shown in episode contect menu.
2022-11-07 15:28:54 +02:00
Teemu Ikonen 9130f39e8c Do not hide Progress tab resume infobar on page switch 2022-10-24 11:41:58 +03:00
Teemu Ikonen 70c97522e6 Replace SimpleMessageArea with GtkInfoBar when resuming
Remove unused SimpleMessageArea code.
2022-10-24 11:41:51 +03:00
Eric Le Lay c41ca22e5d
Merge pull request #1404 from auouymous/use-symbolic-toolbar-icons
Use symbolic toolbar icons.
2022-10-09 12:18:17 +02:00
auouymous fbcc72a906 Disable progress spinbuttons if unchecked at startup.
They correctly enable/disable when the checkbox is clicked, but have
always defaulted to enabled at startup, even when the checkbox is
unchecked.
2022-10-01 05:39:40 -06:00
auouymous 557229c08c Update progress widgets when their values are modified via edit config. 2022-09-29 21:20:42 -06:00
auouymous 26ca4e7649 Use symbolic toolbar icons.
The preferences-desktop icon is not available for 64x64 and larger icon
sizes, and gtk displays a missing icon instead of falling back to
smaller icons. Switching to preferences-other-symbolic would fix the
issue, but the other toolbar icons should probably be changed to
symbolic to match.
2022-09-23 03:40:07 -06:00
B Horn 4e5168d1ba
Quoting file URIs moved by drag and drop
When dragging and dropping a podcast into another program, e.g VLC, some
filenames would cause issues (i.e ones with `#`).

Signed-off-by: B Horn <b@horn.uk>
2022-09-21 14:18:29 +02:00
auouymous b8bbcfa088 Don't use idle_add() for progress dialogs that don't need it.
The dialog is created inside the function and can be destroyed there as
well. This prevents the idle_add from being blocked forever by a
timeout_add, and the dialog never closing.

Fixes #1311.
2022-09-17 00:46:57 -06:00
auouymous defcc6f5f4 Display 'Queueing' on dialog instead of 'Queued' when queueing downloads. 2022-08-29 05:09:04 -06:00
auouymous 871fb2bcd4 Remove unused 'others' variable. 2022-08-29 03:23:52 -06:00
auouymous 26c0f8dad8
Merge pull request #1368 from auouymous/progress-dialogs
Progress dialogs
2022-08-26 03:24:55 -07:00
auouymous 8fa11335be Add progress dialogs for long running actions.
Make the find partial downloads progress dialog update itself.

Show a progress dialog when queueing and resuming downloads.
2022-08-13 02:12:13 -06:00
auouymous 165a45ac0d Add util.IdleTimeout class to reduce lag when updating progress tab. 2022-08-13 01:55:05 -06:00
auouymous f05ce1fc0a Switch deprecated GObject functions to GLib. 2022-08-13 00:33:28 -06:00
auouymous fdc2bb2eb9 Remove redundant force_start parameters. 2022-08-12 23:05:23 -06:00
auouymous 97b3aab8de Keep 'find partial downloads' dialog open longer.
It can take a while to populate the list when there are a lot of
downloads to resume. This leaves the list empty and UI, including the
`Resume All` button unresponsive. Keeping the dialog open while Gtk
populates the list prevents this from happening.
2022-08-03 14:03:07 -06:00
auouymous 4c1cf5bcb0 Create 'Resume all' button by its clicked handler. 2022-07-18 15:18:36 -06:00
auouymous 78c2a2df91
Merge pull request #1309 from gpodder/revert-1284-undownload-checkbox
Revert "Fix #864 add undownload checkbox in delete episode confirm dialog"
2022-06-30 00:23:16 -07:00
auouymous 15fa2d4be9 Revert "Fix #864 add undownload checkbox in delete episode confirm dialog (#1284)"
This reverts commit 5eeda318f4.
2022-06-22 14:21:40 -07:00
auouymous 3c62528ec9 Wait for worker threads to finish before quitting.
Closing gpodder while tasks are downloading or pausing causes a hang and
must be killed from task manager or interrupted if launched from command
line. This was introduced in ed5d18e1b0
but only applicable when using python 3.10. The idle_add() callback is
no longer invoked to wake up the dequeue wait_for() condition, likely
due to the main thread terminating early, which didn't happen in older
python versions. Simply waiting for all worker threads to terminate
fixes the issue.

Fixes #1306.
2022-06-22 13:51:23 -06:00
auouymous c9ad2b6884 Add setting to disable find-as-you-type.
The new setting defaults to enabled to preserve the current behavior of
opening search fields in channel and episode lists when the user begins
typing. Disabling the feature ignores the keypresses and requires ctrl-f
or ctrl-shift-f to open or focus the search field.
2022-06-10 23:26:09 -06:00
auouymous ce6ba8eced Remove space between 'more' and ellipsis character. 2022-06-07 13:37:13 -06:00
auouymous f8d1b22909 Use ellipsis character instead of '...' for deleted titles. 2022-06-07 13:34:15 -06:00