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
auouymous
47aa09199d
Get rid of custom icons for each type of audio and video file.
...
The episode list takes 24% more time to render with this feature. It is
also known to produce incorrect icons for some file types.
Fixes #872 .
2022-12-08 04:46:06 -07:00
auouymous
e8af8603a0
Merge pull request #1435 from auouymous/optimize-episode-list
...
Optimize episode list
2022-12-08 04:39:57 -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
auouymous
3f614a1497
Update episode list in 500ms intervals instead 20ms.
...
The UI is still responsive while performing more work per interval and
updating the list in 90% of the time.
2022-11-08 02:10:21 -07:00
auouymous
57d6f6305c
Optimize get_update_fields() tooltip branching.
...
This can decrease episode list update time by 0.2%.
2022-11-08 02:10:20 -07:00
auouymous
f1357ea149
Don't wrap episode fields in tuples, only to immediately unwrap them.
...
And concatenate episode fields instead of iterating over them.
Simplifies the expression and can decrease episode list update time by
0.2%.
2022-11-08 02:10:19 -07:00
auouymous
f9afa2ccaa
Only query time and filesize once, instead of three times per episode.
...
This can decrease episode list update time by 1.5%.
2022-11-08 02:10:17 -07:00
auouymous
fa27760a3c
Join description while formatting it.
...
This can decrease episode list update time by 0.2%.
2022-11-08 02:10:16 -07:00
auouymous
980ad522a9
Get default icon theme once, instead of for each call.
...
This can decrease episode list update time by 1.7%.
2022-11-08 02:10:12 -07:00
auouymous
98208d4444
Merge pull request #1374 from tpikonen/channel-buttons
...
channel editor: Add buttons next to cover, feed URL, etc.
2022-11-08 04:46:23 +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
236a4c9966
Replace is_on_mobile_screen() with have_touchscreen()
2022-11-03 15:03:52 +02:00
Teemu Ikonen
46dbc80d8b
Merge branch 'master' into dev-adaptive
2022-10-28 21:59:50 +03: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
Eric Le Lay
cb59e1e051
Merge pull request #1402 from auouymous/open-logs-folder
...
Add menu item to open logs folder.
2022-09-24 19:17:27 +02: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
b907183b22
Add menu item to open logs folder.
2022-09-19 23:37:31 -06: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
fe83a92286
Remove redundant timeout removal when creating progress dialog.
...
It is somehow possible for source_id to be zero, causing a
g_source_remove assertion warning.
2022-09-16 05:28:14 -06:00
auouymous
b9c356f44b
Set "New episodes available" tooltip for episodes with html descriptions.
...
Episodes with an html description did not have a tooltip because the
description field is always empty for them. The new _text_description
field is computed at runtime and should be used for any code wanting a
text description.
Fixes #1350 .
2022-08-30 21:04:56 -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
839c85a43e
Merge pull request #1367 from auouymous/idle-timeout
...
Add util.IdleTimeout class to reduce lag when updating progress tab.
2022-08-26 00:07:09 -07:00
Teemu Ikonen
294b047901
Fix 'Invalid episode at path 0' messages on channel change
2022-08-24 11:54:34 +03:00
Teemu Ikonen
8fd6c5eba6
Add a subtitle with statistics to header bar
2022-08-24 11:54:26 +03:00
Teemu Ikonen
da268d4fe2
preferences: Show flap on 'edge-overshot' from top
2022-08-24 11:54:26 +03:00
Teemu Ikonen
a071a1472b
preferences: Reorganize flap code
2022-08-24 11:54:26 +03:00
Teemu Ikonen
3d678927f2
Show a header (pulley) menu on channel list 'edge-overshot'
2022-08-24 11:54:26 +03:00
Teemu Ikonen
b6ac9776d8
Navigate back from shownotes with 'edge-overshot' signal
2022-08-24 11:54:26 +03:00
Teemu Ikonen
21797b80a4
channel editor: Add buttons next to cover, feed URL, etc.
...
Remove the cover image context menu and add buttons next to various
items in the channel editor:
* Cover image: Pop-up a menu to change or refresh the cover image
* Feed URL: Copy the URL to clipboard
* Download folder: Open the download folder
2022-08-24 11:54:26 +03:00
Teemu Ikonen
df3a093462
Navigate back from episodes with 'edge-overshot' signal
...
But only do so if on mobile. Compensates for lack of swipes in
TreeViews.
2022-08-24 11:54:26 +03:00
Teemu Ikonen
b685022a8c
Add function is_on_mobile_screen(window)
2022-08-24 11:54:26 +03:00
Teemu Ikonen
9231e16995
Revert "preferences: Add a hack to maximize on mobile screen"
...
This reverts commit 6105ec55e4
.
2022-08-24 11:54:26 +03:00
Teemu Ikonen
dfc0ebc18d
Remove set_transient_for() calls to fix Phosh non-maximization
2022-08-24 11:54:26 +03:00
Teemu Ikonen
2e57489f32
Fix Phosh non-maximization on channel editor
2022-08-24 11:54:26 +03:00
Teemu Ikonen
525ec32802
adaptive/episodeselector.py: Fix Stream button
2022-08-24 11:54:26 +03:00
Teemu Ikonen
f533ed395a
Replace SimpleMessageArea with GtkInfoBar when resuming
...
Remove unused SimpleMessageArea code.
2022-08-24 11:54:26 +03:00
Teemu Ikonen
4f360e62f6
Remove download actions from app.py
2022-08-24 11:54:26 +03:00
Teemu Ikonen
d7f2943a70
main.py: Fix whitespace
2022-08-24 11:54:26 +03:00
Teemu Ikonen
10250404e8
Adapt in_downloads() to the adaptive version
2022-08-24 11:54:26 +03:00
Teemu Ikonen
9f168c5bda
main.py: Detect if we're in downloads by func in_downloads()
2022-08-24 11:54:26 +03:00
Teemu Ikonen
13e25f1c48
Move actions needed in progress window from 'win' to 'app'
2022-08-24 11:54:26 +03:00
Teemu Ikonen
d6b18463d3
main.py: Merge missing changes from master branch
2022-08-24 11:54:26 +03:00
Teemu Ikonen
224818e39f
Remove context_popover_show()
2022-08-24 11:54:26 +03:00
Teemu Ikonen
596ee8ca61
Rename funcs on_treeview_podcasts_* to on_treeview_channels_*
2022-08-24 11:54:26 +03:00
Teemu Ikonen
a420264400
Remove redundant treeview arg from treeview_*_show_context_menu funcs
2022-08-24 11:54:01 +03:00
auouymous
3a4cd026e9
Reset window position if completely off-screen.
2022-08-22 23:49:11 -06:00
Teemu Ikonen
2665bafe62
Disallow all treeview tooltips when context menu is open
...
Rename treeview_allow_tooltips() to allow_tooltips(). Remove the
treeview arg, and hard code it to enable or disable tooltips on channel
and episode treeviews.
2022-08-22 21:51:52 +03:00
Teemu Ikonen
d1047bc739
Popup context menus with a LongPress gestures
2022-08-22 21:51:52 +03:00
Teemu Ikonen
142c0187d7
Replace downloads context GtkMenu with GtkPopover
2022-08-22 21:51:52 +03:00
Teemu Ikonen
f69182308e
Add actions for downloads context menu items
2022-08-22 21:51:51 +03:00
Teemu Ikonen
7cd9d3ee3a
Remove funcs _add_sub_menu and _submenu_item_activate_hack
2022-08-22 21:51:51 +03:00
Teemu Ikonen
1cf9cf6436
Replace episode context GtkMenu with a GtkPopover
2022-08-22 21:51:33 +03:00
Teemu Ikonen
b165447426
Add actions for episode context menu items
...
Disable 'bluetoothEpisodes' action when Bluetooth is not available.
Add episodeNew and episodeLock to set_episode_actions().
2022-08-22 19:20:28 +03:00
Teemu Ikonen
f9ecbaddc6
Replace channel context GtkMenu with GtkPopover
2022-08-22 19:15:37 +03:00
Teemu Ikonen
c90c8264d3
Add actions for channel context menu items
2022-08-22 19:10:53 +03:00
Teemu Ikonen
06cb0aa451
Add func TreeViewHelper.get_popup_rectangle
2022-08-22 18:56:58 +03:00
Teemu Ikonen
93b636b6ca
channel editor: Add buttons next to cover, feed URL, etc.
...
Remove the cover image context menu and add buttons next to various
items in the channel editor:
* Cover image: Pop-up a menu to change or refresh the cover image
* Feed URL: Copy the URL to clipboard
* Download folder: Open the download folder
2022-08-16 17:18:09 +03:00
auouymous
fc0c1981ed
Add icon to clear URL in the add podcast dialog.
2022-08-13 02:51:15 -06:00
auouymous
932a8e7069
Fix stripping of pasted text when adding podcast URL.
2022-08-13 02:34:45 -06: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
8d1acbd3ad
Improve cancelling of progress dialog and manually updating it.
2022-08-13 02:09:24 -06:00
auouymous
165a45ac0d
Add util.IdleTimeout class to reduce lag when updating progress tab.
2022-08-13 01:55:05 -06:00
auouymous
bab023a4db
Merge pull request #1353 from auouymous/fix-hang-when-resuming-thousands-of-episodes
...
Fix hang when resuming thousands of episodes.
2022-08-13 00:06:28 -07:00
auouymous
f20f1b3afd
Fix hang when resuming thousands of episodes.
...
When the number of episodes causes update_downloads_list() to exceed 1.5
seconds, the idle_add callback will never be called and cause gpodder to
hang.
Fixes #1311 .
2022-08-13 01:04:33 -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
Eric Le Lay
a6e4d39fdd
Merge pull request #1355 from auouymous/keep-dialog-open-longer-before-resume-all
...
Keep 'find partial downloads' dialog open longer.
2022-08-04 23:43:01 +02:00
Thomas Perl
576ae2a762
Remove unneeded shebang lines
2022-08-04 12:39:05 +02:00
Thomas Perl
37e296c629
[shebang] Change /usr/bin/python -> /usr/bin/env python3
...
This should fix "unusual interpreter" Lintian warnings here:
https://udd.debian.org/lintian/?packages=gpodder
2022-08-04 11:53:08 +02: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
Teemu Ikonen
27aed1fbea
Merge tag '3.11.0' into dev-adaptive
...
gPodder 3.11.0 release
2022-08-01 22:04:06 +03:00
auouymous
4c1cf5bcb0
Create 'Resume all' button by its clicked handler.
2022-07-18 15:18:36 -06:00
Teemu Ikonen
4212b17bf2
Do not rely on the Extensions page being last in the stack.
2022-07-11 02:08:51 -06:00
auouymous
aec5e162cf
Add/remove extension preferences buttons when loaded/unloaded.
...
The user must currently close preferences and reopen to configure
extensions that provide a preferences UI. This is a problem when the
user does not know the extension has preferences, but the sudden
appearance of the button when an extension is enabled might catch the
user's attention.
Furthermore, removing the button when the extension is unloaded prevents
any confusion as to why it is still there.
2022-07-08 16:28:41 -06:00
Teemu Ikonen
2cc1a7614a
Merge branch 'master' into dev-adaptive
2022-07-02 23:31:38 +03: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
0fe74c18d2
Generate HTML episode description only when needed.
...
PR #1094 generated an HTML description for any episode that lacked one.
That however increased the database size (almost double in worst case)
because it was storing both text and html versions of each description.
This fixes that by storing the episode thumbnail URL in the database and
generating the HTML description only when shownotes are drawn.
The text description is now cleared for episodes with an HTML
description. This further reduces database size for feeds that provide
both. It also fixes an issue for feeds that provide different text and
HTML descriptions, because the short description would show the text
description and shownotes would show the HTML description. And EQL only
searched the text descriptions, which might not match what the user sees
in the shownotes.
2022-06-19 11:56:12 -06:00
auouymous
4d4ad7f7cb
Make the About dialog text selectable to copy version.
...
Fixes #1302 .
2022-06-16 16:27:05 -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