The library only looks at one of the external storage devices.
If the exported log file doesn't happen to be stored on
the first device, sharing it doesn't work.
This is a known issue in the Android libraries:
https://issuetracker.google.com/issues/37125252
This commit works around it by using an undocumented element that covers
the entire file system.
I have the following setup:
* A tag 'Done' with fully listened podcasts
* The subscription filter "counter greater 0"
* The subscription counter "downloaded episodes"
This way all done podcasts aren't visible in the drawer. When I want to
tag another podcast as done, 'Done' isn't auto-completed. With this
change all tags will be auto-completed.
I have no idea what code path could pass a negative number there,
but apparently there are users who experience a crash when trying
to show a negative position.
Users disable the setting and then wonder why other apps (like Android
Auto) do not display the cover image, even though it says so in the
setting summary.
Feed downloads are now independent from episode downloads.
This makes it easier to use WorkManager for refreshing.
Also, it will make it easier to add different refresh intervals
in the future.
Whenever some view calls requestLayout(), the bottom view jumps.
This happens during slide when setting the player from GONE to VISIBLE.
Also, it happens every time the position changes because the TextView
has a dynamic width. We are not actually interested in the dynamic
width and can simply keep the initial width. This avoids requestLayout()
calls every time the position is updated.
Apparently some servers return "Not Modified", even though a broken feed
was fixed in the meantime. When refreshing all feeds, now force-refresh
the feeds that previously failed.