Commit Graph

1858 Commits

Author SHA1 Message Date
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
Jatin Kumar c661be344e Added include to the queue and episode layout 2019-04-01 20:40:58 -04:00
Jatin Kumar 7f035b8b4b Updated text sizes from dp to sp 2019-03-30 21:42:55 -04:00
H. Lehmann c6344f5bc0
Merge pull request #3073 from deandreamatias/fix-button-shadow-3040
Fix #3040 Video playback control button shadow
2019-03-31 00:44:50 +01:00
Matias de Andrea 007f92c291 Change the icons in interface #3040 2019-03-29 22:23:52 +01:00
Jatin Kumar 209b0b3880 Fixed typos 2019-03-29 14:20:11 -04:00
ByteHamster 8d8e333b84 Fixed fyyd feed search 2019-03-29 18:26:34 +01:00
Jatin Kumar cabf6fee7b Updated NewEpisodesFragment and FavoriteEpisodesFragment files 2019-03-27 04:55:50 -04:00
Jatin Kumar bdf7bf6844 Fixes #3052: Added empty views to the Playback History, Queue, Downloads and Episodes 2019-03-27 04:16:06 -04:00
ByteHamster 022a7f6981 Fixed FeedHandlerTest 2019-03-23 10:45:50 +01:00
Jatin Kumar 6662205167 Added empty views to the PlayBack History, Queue,and Downloads 2019-03-21 03:05:01 -04:00
orionlee 6f7b937d07 bugfix - video playback upon press back button (and pause), playback notification might reappear if one swipes it away quickly. 2019-03-09 14:16:53 -08:00
H. Lehmann 6212455431
Merge pull request #3048 from ByteHamster/new-episodes-download
Fixed download status update in NewEpisodesFragment
2019-03-08 12:15:23 +01:00
ByteHamster f2306d2950 Fixed download status update in NewEpisodesFragment 2019-03-08 11:39:24 +01:00
Matthieu De Beule c362a50e1b Fix #3028: actually use encodedQuery from URLEncoder to avoid encoding issues 2019-03-07 20:53:22 +01:00
H. Lehmann c1bfb9183c
Merge pull request #3013 from hannesa2/buildImprovements
Build improvements
2019-03-05 23:49:00 +01:00
H. Lehmann c0f534e825
Merge pull request #3050 from ByteHamster/add-backup-keyword
Add backup keyword to search
2019-03-04 18:57:37 +01:00
H. Lehmann cfa9304c82
Merge pull request #3047 from ByteHamster/move-to-unit-test
Moved some implementation tests to unit tests
2019-03-04 18:56:51 +01:00
H. Lehmann 3d9811d1e3
Merge pull request #3044 from mamehacker/min_max_speeds_from_preferences
Set min/max playback speeds from preferences
2019-03-04 18:53:34 +01:00
ByteHamster 579b263a86 Add backup keyword to search 2019-03-04 14:33:39 +01:00
ByteHamster c50d37fa1b Moved some implementation tests to unit tests 2019-03-03 23:55:52 +01:00
Nathan Mascitelli 7e3ccd97da Fix regex 2019-03-02 12:12:26 -05:00
Nathan Mascitelli 6f69b4b140 Adjust regext to ignore X:Y timecodes 2019-03-02 08:47:52 -05:00
orionlee e26a54bdbc start playbackService code paths reviewed (context.startService() and
ContextCompat.startForegroundService())
2019-02-27 14:52:34 -08:00
orionlee 76fbab8e82 more #2716 - fix VideoPlayback upon hitting home button. 2019-02-27 14:52:34 -08:00
orionlee f3980091a9 #2716 Prototype for the revamped PlaybackService to fix phantom
notification. Many rough edges. Notable TODOs are marked with [2716].
2019-02-27 14:52:34 -08:00
Shinichiro Fujiwara 6a56260157 Set min/max playback speeds from preferences 2019-02-27 22:29:28 +09:00
Nathan Mascitelli e94e4bc3d0 Use a single format for short timecodes
It is unlikely that multiple formats for short timecodes would be used
in one document. Therefor we will parse all the short timecodes to see
if they are all less then the duration as HH:MM. If they are we will use
that, otherwise we will parse them as MM:SS.
2019-02-13 21:06:19 -05:00
Nathan Mascitelli c49e98b546 Handle more then 23 hours 2019-02-12 20:53:17 -05:00
Nathan Mascitelli 39b9df5064 Timecode parsing logic now handles two short formats
We now handle both HH:MM and MM:SS when paring timecodes. We will move
in reverse order (assuming that the timecodes will increase over the
course of the document) and parse short codes as HH:MM. When we get a
result that does not fit into the duration we will change to parse as
MM:SS and use that for the rest of the document.
2019-02-12 19:43:57 -05:00
Nathan Mascitelli d0f617880c Converter handles HH:MM and MM:SS 2019-02-12 19:43:37 -05:00
Nathan Mascitelli 9180be85ba Update tests to handle minute timestamps
The definition of 'short timestamp' now means minutes and seconds, while
'long timestamp' means hours, minutes, and seconds. The first part of a
timestamp may have one or two digits. Tests updated for this new
definition.
2019-02-10 18:00:28 -05:00
ByteHamster abe68ec7bd Merge remote-tracking branch 'upstream/develop' into auto_download_12_hour_option_2685 2019-02-01 16:25:20 +01:00
ByteHamster 73bb2f712e Removed misleading comment
Auto-generating the versionCode breaks F-Droid builds, see #3012
2019-02-01 16:00:13 +01:00
ByteHamster 39c6ff5f31 Finish when closing error dialog 2019-02-01 15:59:30 +01:00
Burt Wiley Snyder 7f100b3fa6 Null handling in OnlineFeedViewActivity (#3004) 2019-02-01 15:57:19 +01:00
Hannes Achleitner 0663e422a6 unify lint options for all modules 2019-01-27 12:54:56 +01:00
Hannes Achleitner e9c10cdaa8 simplify build concerning maven repos 2019-01-27 12:45:32 +01:00
Hannes Achleitner 9ca7888d92 remove buildtools specification 2019-01-27 12:42:02 +01:00
Martin Fietz 7f37987bda
Merge branch 'develop' into android_gradle_330_upgrade 2019-01-27 11:40:24 +01:00
Martin Fietz bcfc951f1b
Merge branch 'develop' into android_gradle_330_upgrade 2019-01-27 11:35:46 +01:00
Hannes Achleitner 8e5abeea3a simplify versionCode
removed implementation was some Eclipse/ant style, now it's Gradle style
2019-01-27 10:57:45 +01:00
H. Lehmann 0474717ba1
Merge pull request #3005 from pachecosf/fix-ripple-effect
Reimplemented the ripple effect when choosing a nav item
2019-01-23 15:41:51 +01:00
pachecosf e0d6d35ca5 moved closing backet up one line 2019-01-23 05:22:39 -08:00
pachecosf 6753df01b5 changed location of setupGUI to prevent nullpointerexeptions when saved fragment had no initiliazed id 2019-01-23 00:01:18 -08:00
pachecosf 494b34d421 fixed losing media images and descriptions on rotate 2019-01-22 23:57:37 -08:00
pachecosf 8cb4cb16a5 fixed placing of the attr into nav_feedlistitem 2019-01-22 21:37:11 -08:00
pachecosf 4388c5a92f reimplemented the ripple effect when choosing a nav item 2019-01-22 21:30:15 -08:00
ByteHamster 6c2e9afad4 Fixed displaying feed url
Closes #2989
2019-01-19 10:56:10 +01:00
ByteHamster 24d72f93fa Re-added shorter lt description 2019-01-19 10:26:53 +01:00
H. Lehmann 20def27f22
Merge pull request #2993 from pachecosf/add-highlighting-of-drawer-item
Adding highlighting of drawer item functionality
2019-01-19 09:29:58 +01:00
pachecosf a421c490e4 cleaned up a couple of lines 2019-01-18 12:28:49 -08:00
pachecosf a80435a03b switched implementation to ussing attr 2019-01-18 12:09:24 -08:00
ByteHamster 4df5dd9d5e Added title to every language 2019-01-18 19:43:50 +01:00
ByteHamster 765e975df0 Play publisher forces to provide all resources for all languages
Filling with English until it's translated
2019-01-18 19:38:50 +01:00
ByteHamster 497dd3b493 Disabled lt description until it's short enough 2019-01-18 19:22:56 +01:00
ByteHamster 81612ddea6 Added symlinks to alternative publisher locations 2019-01-18 18:49:45 +01:00
ByteHamster 33f8bd78a4 Allow to configure play api key 2019-01-18 18:41:00 +01:00
pachecosf 7da762b8ea Changed implementation using themeUtils instead 2019-01-17 16:18:50 -08:00
orionlee 62711d9a11 Upgrade android gradle plugin to v3.3.0. Also upgraded plugins that would
otherwise generate warning message (dexcount, play-publisher).
2019-01-17 10:18:29 -08:00
pachecosf 43642a5e6b adding highlighting of drawer item functunality 2019-01-16 20:51:54 -08:00