Commit Graph

1870 Commits

Author SHA1 Message Date
Anderson Mesquita e22adbe451 Reorganize DownloadLogFragment lifecycle 2019-06-24 08:38:04 -04:00
Anderson Mesquita bbcec5d0aa Reorganize Episode Fragments lifecycle
This uses the existing android lifecycle methods to avoid having to do
null checks and state saving in various places.
2019-06-24 08:38:04 -04:00
Anderson Mesquita aabe370db3 Fix whitespace 2019-06-24 08:38:04 -04:00
Anderson Mesquita 486ceed0ef Reorganize downloads fragments lifecycle
Unregistering from the EventDistributor on stop will prevent downloads
from updating when an episode finishes playing while the screen was off
(#2747), so this registers/unregisters on view create/destroy.

Disposing of the request to load items on stop could potentially cause
the same issue. Since we're disposing of this request on destroy,
there's no need to keep checking and disposing of it in the several
lifecycle methods.

There's no need to call `onFragmentLoaded()` on attach, since this is
the first lifecycle method to be called [[1]], meaning the items will
always be null by the time this method is called.

Finally, since `loadItems` depends on the view being created, it is now
only called on view create to avoid having to store state in the class
about whether the view has been created, taking advantage of the native
fragment lifecycle.

[1]: https://developer.android.com/guide/components/fragments

Closes: #2747
2019-06-24 08:38:04 -04:00
Anderson Mesquita a556183d60 Extract methods from onViewCreated 2019-06-24 08:38:04 -04:00
Anderson Mesquita 69f116904d Fix IDE warnings
Deprecated method, null pointer exceptions, and simpler switch with only
two cases.
2019-06-24 08:38:04 -04:00
Anderson Mesquita 56dc16802a Fix whitespace 2019-06-24 08:38:04 -04:00
ByteHamster f3cd43b972 Cleanup 2019-06-14 10:45:45 +02:00
ByteHamster 5a7cbdfaca Added authentication and episode filter dialogs 2019-06-14 10:34:55 +02:00
ByteHamster 8f11f8a271 Updated feed settings screen 2019-06-14 00:38:34 +02:00
H. Lehmann 8931d5b795
Merge pull request #3227 from ByteHamster/restructure-settings
Restructured preferences code
2019-06-13 23:38:18 +02:00
ByteHamster 85ef61f4ef Removed deleted receiver from manifest 2019-06-13 23:18:12 +02:00
ByteHamster 99acff3b8f Restructured preferences code 2019-06-13 23:12:41 +02:00
H. Lehmann 3331b663e1
Merge pull request #3213 from fabolhak/add_episode_cache_summary
add pref_episode_cache_summary
2019-06-13 21:55:33 +02:00
Unknown ee1809001d don't override summary value in PreferenceController 2019-06-04 23:58:17 +02:00
H. Lehmann 405db1f169
Merge pull request #3164 from ByteHamster/work-manager
Work manager
2019-06-03 11:59:23 +02:00
ByteHamster 8dc4c9ff56 Upgrade preferences independently from database 2019-06-03 11:56:44 +02:00
Unknown 605e02fa70 add pref_episode_cache_summary 2019-06-01 18:16:47 +02:00
ByteHamster f05132a716 Allow to disable auto updates 2019-05-28 18:11:12 +02:00
ByteHamster 4443d629fc Merge branch 'develop' into work-manager 2019-05-28 17:56:05 +02:00
ByteHamster ce8adc4b26 Use annotation processor for EventBus 2019-05-28 17:26:09 +02:00
H. Lehmann d81cb2ff39
Merge pull request #3043 from CedricCabessa/remaining_time_playback_speed
Fixes #2197: Remaining time playback speed
2019-05-28 15:52:54 +02:00
Cédric Cabessa 60771673dc rename category title to match with "playback speeds"
also rename the key to be consistent with the content
2019-05-28 12:03:28 +02:00
H. Lehmann f563fe48b5
Merge pull request #3207 from ByteHamster/sort-description
Sort options: 'old to new' instead of 'ascending'
2019-05-27 22:54:21 +02:00
Anderson Mesquita 2450b0817b Replace action/callback utils with ItemActionButton
This just replaces all previous usages of `ActionButtonUtils` and
`DefaultActionButtonCallback` with the newly created `ItemActionButton`
class.
2019-05-27 16:06:55 -04:00
Anderson Mesquita 1d64057fd4 Extract action button utils/callback into classes
This splits the logic in `ActionButtonUtils` and
`DefaultActionButtonCallback` into multiple specialized classes to
reduce duplication figuring out which button/action to use while at the
same time making each individual button to have a single responsability.
2019-05-27 16:01:54 -04:00
ByteHamster 81a3d756eb Sort options: 'old to new' instead of 'ascending' 2019-05-27 21:09:55 +02:00
Martin Fietz c327fd59c9
Merge pull request #3206 from ByteHamster/clear-text-traffic
Clear text traffic in shownotes
2019-05-27 19:24:46 +02:00
ByteHamster 2d5995d1a5 Allow mixed content 2019-05-27 13:06:52 +02:00
ByteHamster 5ea11ca748 Allow cleartext traffic 2019-05-27 12:48:49 +02:00
H. Lehmann 46103883ce
Merge pull request #3191 from jas14/stricter-db-import
Check SQLite3 magic bytes before import
2019-05-27 12:44:44 +02:00
H. Lehmann 35770dc2e2
Merge pull request #3198 from jas14/fix-3196
Avoid error delivery to disposed Disposable
2019-05-27 12:41:33 +02:00
Joe Stein 382860d65e Avoid error delivery to disposed Disposable 2019-05-23 08:48:34 -04:00
Joe Stein 4f3fa6246e Added test for shutdown/widget updater race in PSTM 2019-05-21 18:36:04 -04:00
Joe Stein 09e138b51f Check SQLite3 magic bytes before import 2019-05-20 17:41:20 -04:00
H. Lehmann c98a7c0c38
Merge pull request #3136 from andersonvom/develop
Add progress bar with space information to data folder selection dialog
2019-05-19 19:38:37 +02:00
Anderson Mesquita e4a17562cb Improve space wording on choose data folder dialog
This makes it clear that the number refers to the **free** space left on
the device, as opposed to the total space available.
2019-05-19 13:25:27 -04:00
Anderson Mesquita 9396d41dcc Add space usage bar to data folder dialog
This displays a progress bar with the amount of used/free space in each
storage location to make it easier to identify storage devices. This is
particularly useful for devices that use non-standard names.

Reference: #3049
2019-05-19 13:25:27 -04:00
Anderson Mesquita 683f7e46a2 Extract data folder dialog layout
This is in preparation to add a progress bar displaying the amount of
used/free space in the dialog (#3049). Since we'll need a custom view to
do it, this extracts the layout beforehand.
2019-05-19 13:25:27 -04:00
Anderson Mesquita 31adff0dcc Extract methods in ChooseDataFolderDialog
This makes the main `showDialog()` method a bit shorter by extracting
behavior into shorter methods.
2019-05-19 13:25:27 -04:00
ByteHamster b2ea26d489 No longer try to remove log 2019-05-19 19:23:33 +02:00
H. Lehmann a8b05c3c66
Merge pull request #3165 from ByteHamster/opml-import-mismatch
Removed opml pick action
2019-05-19 19:22:14 +02:00
H. Lehmann 0b6930517a
Merge pull request #3109 from ByteHamster/eventbus-v3
Eventbus v3
2019-05-19 19:19:52 +02:00
ByteHamster 55874607df No longer need to listen to serviceEvent. PlaybackController does that automatically 2019-05-19 19:14:11 +02:00
ByteHamster ccbcdb6861 Fixed crash 2019-05-19 19:01:26 +02:00
ByteHamster 73744e3d4c Merge branch 'develop' into eventbus-v3 2019-05-19 18:59:03 +02:00
H. Lehmann fa03edf419
Merge pull request #3177 from andersonvom/fix-episodes-searchbar
Prevent actionbar items from moving when searching for episodes
2019-05-19 18:46:07 +02:00
Martin Fietz 5db139958a
Merge pull request #3162 from andersonvom/2853-chapter-scrolling
Scroll to chapter currently being played
2019-05-19 12:14:56 +02:00
Martin Fietz 8f93e3b2e2
Merge pull request #3172 from andersonvom/3169-cover-fragment-small-screen
Fix cover fragment in small screens
2019-05-19 12:01:45 +02:00
Martin Fietz 751670a659
Merge pull request #3168 from ByteHamster/about-open-browser
About screen: Open web links in browser
2019-05-19 11:34:17 +02:00
ByteHamster b89271329b Bumped version to 1.7.2b 2019-05-17 19:20:10 +02:00
H. Lehmann 1a327a2aae
Merge pull request #3188 from ByteHamster/revert-playbackservice-changes
Revert playbackservice changes
2019-05-17 15:23:41 +02:00
ByteHamster 3fca616e30 Revert "Merge pull request #2954 from orionlee/bugfix_phantom_notification_rework_2716"
This reverts commit 643173de14, reversing
changes made to f2d103736d.
2019-05-17 09:45:22 +02:00
ByteHamster 068a4255c1 Do not deliver result if view is destroyed 2019-05-14 22:19:56 +02:00
ByteHamster b617397397 Bumped version to 1.7.2 2019-05-12 18:25:15 +02:00
ByteHamster e99ce0a33b Do not query database on main thread 2019-05-12 00:20:30 +02:00
Anderson Mesquita 65abd2bbb4 Prevent actionbar items from moving when searching
Previously, when the user clicked the search button, the context menu
would be hidden and the refresh button would move way too close to the
edge of the screen.

This makes sure that when a user clicks the search button on the
episodes screen, the remaining actionbar items (refresh and context
menu) stay where they are.
2019-05-11 14:20:57 -04:00
ByteHamster c9b17c14f1 Bumped version to 1.7.2-RC5 2019-05-08 19:55:00 +02:00
H. Lehmann 96f582a4d4
Merge pull request #3166 from ByteHamster/fix-some-tests
Fixed some integration tests
2019-05-08 19:30:04 +02:00
Anderson Mesquita e9e61776ed Fix cover fragment in small screens
The cover fragment would hide both podcast and episode names in small
screen devices or multi-window mode.

This replaces the deprecated PercentRelativeLayout in favor of a regular
LinearLayout with weights to make sure that each section of the fragment
(podcast title, image, episode name) will have the necessary space in
the screen.

Since PercentRelativeLayout was only being used here, it also removes
the dependencies from the gradle files.

Closes: #3169
2019-05-08 09:48:00 -04:00
ByteHamster e464569712 Fixed NPE 2019-05-08 15:37:53 +02:00
ByteHamster df395ea388 Open web links in browser 2019-05-07 17:56:35 +02:00
ByteHamster 7ce4685447 Bumped version to 1.7.2-RC4 2019-05-07 15:54:36 +02:00
ByteHamster ae3cef3bd2 Fixed some integration tests 2019-05-06 23:52:02 +02:00
ByteHamster 0dc23a6c99 Removed opml pick action 2019-05-06 23:20:25 +02:00
ByteHamster dbda4a9aa8 Using WorkManager for feed updates 2019-05-06 23:04:19 +02:00
Anderson Mesquita 419c10632b Scroll to chapter currently being played
This is especially helpful for episodes that have a large number of
chapters.

Closes: #2853
2019-05-05 08:22:31 -04:00
Anderson Mesquita af31464cd5 Fix padding when count is zero and error happened
When we're not able to get the episode count for a podcast and updating
the feed fails, the error icon shown in the navbar is too close to the
right/end border of the nav drawer.

This fixes this padding.

Closes: #2982
2019-05-04 18:14:28 -04:00
H. Lehmann 0107cf22cc
Merge pull request #3155 from ByteHamster/empty-view-simplification
Simplify empty view handling on recycler views
2019-05-03 12:24:27 +02:00
ByteHamster 7f514384fc Fixed NPE when selected item is null
The method is called again with a valid listAdapter automatically
Closes #3154
2019-05-03 11:56:27 +02:00
ByteHamster 06c15fd9e6 Simplify empty view handling on recycler views 2019-05-03 11:06:04 +02:00
ByteHamster 7a921e0024 Fixed about screen readability in amoled theme (Closes #3151) 2019-05-03 10:20:23 +02:00
Martin Fietz 954cf87eff
Merge pull request #3147 from ByteHamster/fix-empty-list
Fixed empty list not receiving updates
2019-04-30 20:55:12 +02:00
ByteHamster 9b91a51df8 Fixed empty list not receiving updates 2019-04-30 18:57:09 +02:00
Anderson Mesquita a2cd8cca73 Return Optional feed when loading feed items
RxJava 2.x no longer accepts `null` values and will yield a
`NullPointerException` immediately or as a signal to downstream [1].

This returns an Optional<Feed> instead to avoid errors.

[1]: https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0#nulls
2019-04-30 06:10:41 -04:00
Cédric Cabessa b2dc208019 force refresh time when playback speed change
This is useful when media is paused
2019-04-28 21:03:18 +02:00
Cédric Cabessa cf638a4978 use time converter and pref in MediaPlayer and Widget 2019-04-28 21:03:18 +02:00
Cédric Cabessa 743ec1927c add preference for "Time respects playback speed" 2019-04-28 21:03:18 +02:00
Anderson Mesquita 34d33f796e Close OkHttp request before making new ones
When adding certain podcasts [1], a `LeakedClosableViolation` is thrown
due to the fact that we're reusing the OkHttpClient to make multiple
requests (one to get the iTunes toplist for the user's language, and
another one defaulting to US).

This makes sure that all requests are closed to prevent this exception,
according to OkHttp docs [2].

[1]: https://podcasts.apple.com/us/podcast/stupid-genius-with-emma-chamberlain/id1458568923
[2]: https://github.com/square/okhttp/blob/18f2b5e/okhttp/src/main/java/okhttp3/Call.kt#L32-L40
2019-04-28 09:10:02 -04:00
ByteHamster a4dc3d9e96 Bumped version to RC3 2019-04-28 14:39:01 +02:00
ByteHamster 835d1f8cd3 Made null check work 2019-04-28 14:18:47 +02:00
ByteHamster 881578ee41 Bumped version to 1.7.2-RC2 2019-04-26 19:12:50 +02:00
ByteHamster 8e25f188c5 Fixed crash where recyclerAdapter is null
Closes #3138
2019-04-26 19:10:27 +02:00
ByteHamster 48ead285b3 Imported store description into new publisher layout 2019-04-26 18:10:56 +02:00
ByteHamster d0cbe158bb New Play publisher directory layout 2019-04-26 17:58:48 +02:00
H. Lehmann 309cd20d66
Merge pull request #3134 from ByteHamster/prepare-release
Prepare 1.7.2 release
2019-04-26 16:55:12 +02:00
ByteHamster 57301cf81c Making sure that publisher releases to alpha first, so we can wait for Pre-Launch-Report 2019-04-26 10:38:34 +02:00
ByteHamster f96c1d5367 Bumped versionCode 2019-04-26 10:37:05 +02:00
Anderson Mesquita fd2424edd4 Cleanup compiler warnings
Removes redundant casts and adds generic type to avoid compiler warnings.
2019-04-25 18:45:36 -04:00
ByteHamster 0925078770 Translation updates 2019-04-24 23:19:52 +02:00
ByteHamster 46f9a9c65b Added release notes 2019-04-24 23:12:03 +02:00
H. Lehmann 3b9e34e18e
Merge pull request #3131 from ByteHamster/fix-hiding-ExternalPlayer
Hiding ExternalPlayerFragment onStart
2019-04-24 23:05:55 +02:00
ByteHamster 92165f9021 Hiding ExternalPlayerFragment onStart
If the playback is finished in background, the fragmentLayout is not hidden.
Steps to reproduce (without this commit):
- Start last item in queue
- Leave app using home button
- Finish playback by using notification skip button
- Resume to AntennaPod
- ExternalPlayerFragment is shown (in invalid state) but should be hidden
2019-04-24 22:56:37 +02:00
Ali f2a777bd06 bugfix #3092 - time left on Queue screen not updated after download completes 2019-04-19 04:34:06 +01:00
ByteHamster f947b0a90d Fixed NPE 2019-04-13 16:01:17 +02:00
H. Lehmann 7c4d4656f8
Merge pull request #3113 from ByteHamster/fix-crash-npe
Fixed NPE
2019-04-12 23:20:29 +02:00
ByteHamster 8284251a91 Fixed NPE 2019-04-12 23:19:45 +02:00
ByteHamster 8ebc98af13 Fixed crash when re-using released controller 2019-04-12 11:55:41 +02:00
ByteHamster 09f4ebf08a Let PlaybackController handle listening for service start 2019-04-12 11:39:38 +02:00
ByteHamster 7d20baf4f9 Upgraded EventBus to v3
Also made sure that register/unregister are called in onStart/onStop
instead of onResume/onPause (prevents possible MultiWindow problems
where updates are not received because activity is not fucused).
2019-04-12 11:32:31 +02:00