Commit Graph

1818 Commits

Author SHA1 Message Date
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
H. Lehmann 3f1e6b5d50
Merge pull request #3106 from ByteHamster/subscriptions-columns
Set number of subscription columns
2019-04-12 10:56:26 +02:00
ByteHamster 777d92d4be Set number of subscription columns 2019-04-11 21:24:51 +02:00
ByteHamster d4c87facaf Fix displaying progress indicator in multi window 2019-04-11 20:54:48 +02:00
H. Lehmann 97d08f3b00
Merge pull request #3097 from ByteHamster/exoplayer-main-thread
Executing all ExoPlayer methods on main thread
2019-04-11 20:50:56 +02:00
H. Lehmann be6eb1c738
Merge pull request #3102 from ByteHamster/no-state-in-fragments
Do not hold state in fragments
2019-04-11 20:50:34 +02:00
ByteHamster 1d0e22135e Making sure that ExternalPlayerFragment is updated when starting first media 2019-04-11 20:41:39 +02:00
ByteHamster 0e3cabb86d Do not hold state in fragments 2019-04-10 01:05:36 +02:00
Martin Fietz d8a010ad48
Merge pull request #3100 from orionlee/bugfix_bulk_action_ui_survive_split_screen_3088
bugfix - bulk actions - make UI survive upon split screen
2019-04-08 18:54:01 +02:00
orionlee 345e6863c3 bugfix #3099 - add podcast by URL - show error dialog when URL points to no feed. 2019-04-07 14:56:15 -07:00
orionlee 1928411694 bugfix #3088 - bulk edit - make UI survive upon split screen 2019-04-07 14:27:29 -07:00
orionlee e16f44ad5d bugfix - rxjava2 null return - wrap nullable return with Optional 2019-04-06 14:22:53 -07:00
orionlee c04f340ae2 #2966 RxJava2 null - case underlying method has needs to return null.
Need to wrap return result with Optional<>
Mark code path with TODO. Actual fix is pending #2954 merge.

Rx observer: underlying sources that need to return Optional<>
OnlineFeedViewActivity.parseFeed : <anonymous subscriber>
PlaybackController.bindToService : fixed in #2954
2019-04-06 13:43:12 -07:00
orionlee 1655d234af #2966 RxJava2 null - case the underlying method may return null, but
should never happen in the code path, e.g.,
 return the current FeedItem in ItemFragment UI.
Mark underlying method as @Nullable, and let observer's existing
 onError() to handle null case

Rx observer : underlying sources marked as @Nullable
 ItemFragment.load : .loadInBackground
 MediaplayerActivity.checkFavorite : DBReader.getFeedItem
 ItemDescriptionFragment.onViewCreated : DBReader.getFeedItem
 ItemlistFragment.loadItems : .loadData
2019-04-06 13:43:11 -07:00
orionlee 0472bb9237 #2966 RxJava2 null - explicit mark underlying Rx sources as NonNull
to be on the safe side, for cases that the consuming observers checks null
unnecessarily.

Rx observer : underlying sources marked as NonNull
OnlineFeedViewActivity.startFeedDownload : Downloader.getResult
AllEpisodesFragment.loadItems : AllEpisodesFragment.loadData
PlaybackHistoryFragment.loadItems : DBReader.getPlaybackHistory
QueueFragment.loadItems : DBReader.getQueue
SearchFragment.search : .performSearch
2019-04-06 13:43:11 -07:00
orionlee 670fc124eb #2966 RxJava2 null - explicit mark underlying Rx sources as NonNull
to be on the safe side, for cases that the consuming observers
already assumes the result is not null.

Rx observer : underlying sources marked as NonNull
OnlineFeedViewActivity.listener member : DBReader.getFeedList
StatisticsActivity.loadStatistics : DBReader.getStatistics
CustomMRControllerDialog.updateViews : CustomMRControllerDialog.fetchArt
CompletedDownloadsFragment.loadItems : DBReader.getDownloadedItems
DownloadLogFragment.loadItems : DBReader.getDownloadedItems
ItemDescriptionFragment.onViewCreated : .loadData, Timeline.processShownotes
SubscriptionFragment.loadSubscriptions : DBReader.getNavDrawerData
SubscriptionFragment.onContextItemSelected (x2) : DBWriter.markFeedSeen, DBWriter.markFeedRead
PreferenceController.export : ExportWorker.output member
2019-04-06 13:43:11 -07:00
H. Lehmann 5f86af88b1
Merge pull request #3083 from orionlee/bulk_remove_from_queue_1145
Bulk remove from queue
2019-04-06 21:45:55 +02:00
ByteHamster 74fdabba69 Show single item after undo in EpisodesFragment 2019-04-06 21:32:03 +02:00
orionlee cb14fd930f refactor - rename string resource name `remove_episode_lable` , which was ambiguous with typos, to `delete_episode_label`
- non-default string resources to be handled by Transifex
2019-04-06 11:27:20 -07:00
orionlee 075547947e tweak - batch edit UI - support longer action label 2019-04-06 11:15:35 -07:00
orionlee 3bf880e34a remove comment to reduce mental work per review feedback 2019-04-06 11:15:35 -07:00
orionlee 86bf3ef3e0 remove outdated comment - support for vector drawables for pre Android 5 devices is here to stay. 2019-04-06 11:15:34 -07:00
orionlee 0204c1cebd tweak - bulk edit UI - remove hiding FAB during scroll per review feedback 2019-04-06 11:15:34 -07:00
orionlee 3311b4371e tweak - bulk edit UI - use Snackbar for selection message
- to be consistent with the action message in previous commit.
2019-04-06 11:15:34 -07:00
orionlee cc43af110a tweak - bulk edit UI - show a message after an action is applied. 2019-04-06 11:15:14 -07:00
orionlee 46f7805a96 refactor - bulk edit UI - make fab clickable on Pre-Lollipop devices without custom codes. 2019-04-06 11:12:34 -07:00
Martin Fietz 6c3033409d Create new adapter to show single item after undo 2019-04-06 16:28:07 +02:00
orionlee 836334798d refactor - UI - make OPML import screen use the new select all / none icons as well (so that only single set of icons are needed) 2019-04-04 13:58:50 -07:00
orionlee d186309066 bulk edit - UI - new select all / none icons, based on
standard Material icons.
2019-04-04 13:50:55 -07:00
orionlee dfe2241b4c bulk remove episodes from queue - UI - icon for dark themes. 2019-04-04 13:12:09 -07:00
Martin Fietz 4797d3ae56
Merge pull request #3086 from ByteHamster/fix-double-slash-url
Specifying base url
2019-04-04 19:06:34 +02:00
H. Lehmann 643173de14
Merge pull request #2954 from orionlee/bugfix_phantom_notification_rework_2716
Fix phantom service notification
2019-04-04 11:59:30 +02:00
orionlee b683d33bcb bulk edit - refactor - reorder method parameter for DBWriter.removeQueueItem(Context, FeedItem, boolean) to be consistent with the rest of the API. 2019-04-03 14:21:35 -07:00
orionlee bcaba92851 bulk edit - refactor - factorize common codes in binding action to its UI and actual logic. 2019-04-03 14:15:05 -07:00
orionlee 1052b393d2 bulk edit - refactor - rename menu ids, to be consistent with single edit counterparts 2019-04-03 13:40:55 -07:00
orionlee a1d718a59a bulk edit - refactor - rename internal constant flags so that the names are consistent 2019-04-03 13:31:32 -07:00
ByteHamster ce013bb225 Specifying base url
Fixes <a href="//example.com"> links
2019-04-03 18:53:11 +02:00
H. Lehmann 7a98e3c231
Merge pull request #3082 from ByteHamster/mobile-updates
Mobile updates: Allow images
2019-04-03 17:43:53 +02:00
H. Lehmann b6e50c61d6
Merge pull request #3060 from jatinkumarg/issue-3052
Added empty views to the PlayBack History, Queue,and Downloads
2019-04-03 17:42:09 +02:00
orionlee 48cf33d7da bulk edit - no longer defaulted to check all 2019-04-02 17:34:48 -07:00
orionlee 3768dfb0ff bulk edit - "N selected" UI logic 2019-04-02 17:34:05 -07:00
orionlee b8bb908b67 fix typo in comments 2019-04-02 16:56:22 -07:00
orionlee 364c9a308d bulk remove from queue - backend - implement the new API 2019-04-02 15:59:27 -07:00
Jatin Kumar f6370cc2b9 Renamed text view ids and added tools namespace 2019-04-02 17:36:27 -04:00
orionlee 7d78b88a1c bulk remove from queue - frontend logic, with a stub backend. 2019-04-02 14:11:22 -07:00
orionlee acbb1cf5e2 document android:elevation API compatibility 2019-04-02 13:59:54 -07:00
orionlee 9925830fff batch edit - replace the bottom button UI with FAB Speed Dial (no new actions yet) 2019-04-02 13:52:34 -07:00
orionlee 9f854fbd3b fix speed dial buttons order 2019-04-02 11:47:57 -07:00
orionlee 53e2511642 ensure speed dials clickable (for pre-Android 5 devices) 2019-04-02 11:47:57 -07:00
orionlee 4918a743a7 stub speed action action listener 2019-04-02 11:47:57 -07:00
orionlee f7fa0836ea make speed dials scrollable, so that they work in landscape / split window mode. 2019-04-02 11:47:57 -07:00
orionlee 737f7571ab UI Prototype for Batch Edit Episodes rework (from #1145) 2019-04-02 11:47:57 -07:00
ByteHamster 0fda36b9b3 Add preference to allow mobile updates of images 2019-04-02 17:41:15 +02:00