auouymous
f64440867d
Don't display stacktrace for common download errors.
2023-01-25 16:44:06 -07:00
auouymous
eb02ddd9d5
Add 'url', 'link' and 'filename' EQL nouns.
2023-01-25 16:30:47 -07:00
auouymous
92c741b02f
Log URL when youtube.py can't get channel ID.
2023-01-22 17:21:23 -07:00
auouymous
7c2b8621a3
Document the episode description fields.
2023-01-12 15:04:26 -07:00
auouymous
9d46b2d3de
Add comment about unknown external files for youtube-dl/yt-dlp downloads.
2023-01-12 04:10:08 -07:00
auouymous
87d9018918
Change 'Finishing...' to something more descriptive of the operation.
2023-01-12 01:17:56 -07:00
auouymous
9b7d53f9b2
Don't use parameter labels when calling __for_each_task_set_status().
...
They make the call harder to read and cause it to wrap lines.
2023-01-12 00:26:03 -07:00
auouymous
bdecd607c1
Merge pull request #1452 from auouymous/fix-ui-issues
...
Fix UI issues
2023-01-12 00:12:22 -07:00
auouymous
8b5bf2c361
Merge pull request #1444 from auouymous/add-trim-episode-title-prefix-setting
...
Add setting to disable trimming episode title prefix.
2023-01-04 01:38:41 -07:00
auouymous
3adfcf7b2f
Speed up queueing by not updating download list a second time.
2023-01-04 01:34:02 -07:00
auouymous
9d16460571
Show progress indicator when pausing tasks.
...
This also significantly speeds up pausing by disabling download update
timer and download queue manager.
2023-01-04 01:27:48 -07:00
auouymous
43afafcc23
Show progress indicator when queueing paused and failed tasks.
...
The indicator was previously shown only while queueing new tasks, but
not when queueing failed tasks or unpausing paused tasks. It is now
displayed while scanning the episodes and then restarts when queueing
new tasks.
The download update timer and download queue manager are also disabled
earlier to significantly speed up the process.
2023-01-04 01:03:08 -07:00
auouymous
bda12a53c1
Allow IdleTimeout to scale based on how long the callback took.
...
upload_downloads_list() is now called at upto 5 second intervals when
there are a lot of tasks. Previously, it could take 5 seconds to run and
then only sleep for 1.5 seconds, making the UI unresponsive for long
periods.
2023-01-03 15:33:31 -07:00
auouymous
6470ed5484
Add a progress dialog when cancelling tasks.
2023-01-03 15:33:03 -07:00
auouymous
6c7337f5fb
Process episode list selection changes every 250ms.
...
A fast key repeat rate can cause on_episode_list_selection_changed to be
called quicker than it can update the UI. This slows down
shift-selections and results in continued processing long after the key
has been released.
The 250ms timer batches multiple events into a single update, and
improves responsiveness on slower machines.
2023-01-03 06:01:15 -07:00
auouymous
e1fc290ef2
Remove all timer deadlocks by using idle_add priority for them.
...
Add util.idle_timeout_add() to register timers with the same priority as
idle_add(). Change the IdleTimeout to also use the idle_add() priority.
This eliminates the chance of a timer blocking any idle_add from
running.
Change most timeout_add's to idle_timeout_add. Change the timer in
DownloadStatusModel::get_next() back to an idle_add.
2023-01-03 06:01:15 -07:00
auouymous
d2f34d0d87
Disable background operations while progress dialogs are open.
...
Changing task state causes UI to hang while DownloadQueueManager spawns
threads and updates progress tab. And the update_downloads_list() timer
can hang UI for several seconds at a time when thousands of tasks are
queued.
Disabling both of these while a progress dialog is open allows tasks to
be queued faster and the dialog closed sooner.
2023-01-03 06:01:15 -07:00
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
6e38e1b527
Set error icon for episodes with invalid URLs.
2022-12-15 06:08:47 -07:00
auouymous
2e7b1678d4
Don't discard episodes with invalid urls and links.
2022-12-15 05:50:27 -07:00
auouymous
6e29aa12ce
Add setting to disable trimming episode title prefix.
2022-12-15 03:41:01 -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
f967fa9bda
Change include_description parameter to required.
...
Nothing made use of the optional parameter, and it should always be set
from the config value.
2022-12-14 06:29:54 -07:00
auouymous
3203a0ef81
Remove gPodderSettings_LegacySupport.
2022-12-08 15:59:17 -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
f62e4294e0
podcast_list_view_mode -> ui.gtk.podcast_list.view_mode
2022-12-08 15:55:08 -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
ff2c19e186
auto_cleanup_downloads -> ui.gtk.download_list.remove_finished
2022-12-08 15:48:16 -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
dd269d7b88
auto_remove_unplayed_episodes -> auto.cleanup.unplayed
2022-12-08 15:35:08 -07:00
auouymous
b812c62775
auto_remove_unfinished_episodes -> auto.cleanup.unfinished
2022-12-08 15:33:35 -07:00
auouymous
0bcfd29d76
auto_remove_played_episodes -> auto.cleanup.played
2022-12-08 15:32:05 -07:00
auouymous
c6695f5b69
episode_old_age -> auto.cleanup.days
2022-12-08 15:25:26 -07:00
auouymous
84c35c76fd
max_downloads -> limit.downloads.concurrent
2022-12-08 14:49:33 -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