Commit Graph

1849 Commits

Author SHA1 Message Date
H. Lehmann 8a3e4f8765
Merge pull request #3351 from ByteHamster/lazy-load-episodes
More episodes on all episodes
2019-08-30 15:10:45 +02:00
Jan-Peter von Hunnius 2ba91f4f33 More episodes on all episodes 2019-08-30 15:09:54 +02:00
ByteHamster e58dbfbd15 Allow to delete currently playing media 2019-08-30 14:26:57 +02:00
ByteHamster b74c6083c0 Added missing import 2019-08-30 14:01:15 +02:00
H. Lehmann 46af0e0c36
Merge pull request #3349 from ByteHamster/no-crash-after-dispose
Do not crash on undeliverable InterruptedException
2019-08-30 13:44:13 +02:00
ByteHamster af8dc2c9b9 Do not crash on undeliverable InterruptedException 2019-08-30 13:35:30 +02:00
H. Lehmann f263ca8cd7
Merge pull request #3347 from ByteHamster/remove-notification
Playback service notification improvements
2019-08-30 13:09:51 +02:00
ByteHamster 5521a7a4e1 Updated streaming confirmation icon 2019-08-30 13:07:58 +02:00
ByteHamster 4678297ec3 Added button to always allow streaming 2019-08-30 13:07:58 +02:00
ByteHamster e6ad131d37 Added media details to dummy notification 2019-08-30 13:07:58 +02:00
ByteHamster f0acfa4263 Do not hide notification on audio focus loss 2019-08-30 13:07:58 +02:00
H. Lehmann b0f97fdd89
Merge pull request #3348 from ByteHamster/translate-preference-search
Extracted preference search string resources
2019-08-30 13:03:21 +02:00
H. Lehmann 9ae179adce
Merge pull request #3343 from ByteHamster/video-playback-speed
Allow to adjust video playback speed
2019-08-30 13:03:06 +02:00
H. Lehmann 45578d84ef
Merge pull request #3342 from ByteHamster/black-theme-batch
Fixed white on white icon
2019-08-30 13:01:58 +02:00
H. Lehmann ae606f552a
Merge pull request #3326 from ByteHamster/media-player-messages
Better media player error messages
2019-08-30 13:01:33 +02:00
ByteHamster 4e80388380 Extracted preference search string resources 2019-08-30 11:38:56 +02:00
ByteHamster c14c223e2f Allow different playback speed for video 2019-08-30 01:56:52 +02:00
ByteHamster a445942cec Extracted playback controls to new class 2019-08-30 01:09:18 +02:00
ByteHamster 7f05e358d1 Fixed white on white icon 2019-08-30 00:47:29 +02:00
ByteHamster 2a24fa849e Fixed setting mobile updates programmatically 2019-08-28 20:16:59 +02:00
ByteHamster e5d72c90f6 Do not stop service on unknown media key 2019-08-23 19:42:19 +02:00
ByteHamster b5c63db0e9 Fixed 'Service started without startForeground'
When we called stopForeground(), the service went to background state.
If we then somehow receive a second intent to onStartCommand (without onCreate),
we assume that the service already is in foreground, what is wrong.

This commit moves the service to foreground in onStartCommand if
it is no longer in foreground.
2019-08-23 19:33:19 +02:00
ByteHamster f9889939a6 Updated Translations 2019-08-20 22:10:09 +02:00
ByteHamster 5774d9d2c7 Better media player error messages 2019-08-18 12:44:51 +02:00
ByteHamster aca6e3e9e4 Fixed core integration tests 2019-08-11 15:00:37 +02:00
H. Lehmann 4e79ddb51b
Merge pull request #3315 from damoasda/Queue-Sort-Order2
Queue sort order - with keep sorted checkbox
2019-08-11 14:48:01 +02:00
damoasda c4399de8cb Changes due to feedback in pull request #3315 2019-08-11 14:07:45 +02:00
damoasda fe9f0c8e7e Changes due to feedback in pull request #3315 2019-08-11 11:08:19 +02:00
H. Lehmann 3ceb99d2e2
Merge pull request #3303 from rezanejati/develop
Add socks proxy in network settings
2019-08-11 10:19:52 +02:00
damoasda be676c6faa Queue: Keep sorted #1556 2019-08-10 21:25:59 +02:00
H. Lehmann 867a2812e8
Merge pull request #3292 from ByteHamster/mobile-updates-setting
Mobile updates setting
2019-08-10 18:37:56 +02:00
H. Lehmann 2d88cd679f
Merge pull request #3314 from ByteHamster/phantom-notification
Stop service if playing from preferences does not work
2019-08-10 18:37:37 +02:00
ByteHamster 5bfcbce499 Stop service if playing from preferences does not work 2019-08-10 17:58:12 +02:00
H. Lehmann 2ff4632468
Merge pull request #3313 from ByteHamster/episode-cache-size
Added 500 episodes limit
2019-08-10 17:45:34 +02:00
H. Lehmann 9ffd9a9848
Merge pull request #3283 from andersonvom/3273-renable-linting
Re-enable deprecation and serial linting
2019-08-10 17:45:18 +02:00
ByteHamster 581d6350e7 Added 500 episodes limit 2019-08-10 17:34:57 +02:00
ByteHamster d2084608a6 Fixed reappearing notification 2019-08-10 17:20:26 +02:00
rezanejati 2f1ebbbf74 Add brackets for condition - add new line in ProxyConfig 2019-08-07 09:11:55 +04:30
rezanejati f3fec57a18 Add socks proxy in network settings 2019-08-05 16:39:05 +04:30
damoasda 51f348caa3
Merge branch 'develop' into Queue-Sort-Order 2019-08-04 09:59:32 +02:00
ByteHamster de13f9b564 Updating pendingIntent 2019-07-25 14:01:24 +02:00
ByteHamster 1651b95f77 Displaying notification when playback switches to streamed episode 2019-07-25 13:53:54 +02:00
ByteHamster be8e7c32f1 Display notification when trying to stream 2019-07-25 01:08:16 +02:00
ByteHamster be42cc0c71 Refactored mobile updates setting 2019-07-25 00:38:00 +02:00
Anderson Mesquita 883bd27bac Remove non-existing class from ClientConfig
When #3284 (Make ExoPlayer the default player) was merged [1],
`UpdateManager` was removed but a reference to it was left behind in
`ClientConfig`, which causes the project not to build.

Since its contents were integrated into `app/PreferenceUpgrader`, we no
longer need this entry here.

[1]: https://github.com/AntennaPod/AntennaPod/pull/3284
2019-07-24 07:58:31 -04:00
H. Lehmann f7251af8be
Merge pull request #3284 from ByteHamster/default-exoplayer
Make ExoPlayer the default player
2019-07-23 22:11:48 +02:00
ByteHamster 8b9c31ccf0 Do not set PlaybackService to null while still updating widget 2019-07-23 21:27:18 +02:00
ByteHamster e2cf363cc4 Make ExoPlayer the default player 2019-07-23 21:22:27 +02:00
ByteHamster 76f9040184 Fixed NPE where trying to play null file
Stack trace contains headset button handler, so I guess the media is not loaded correctly.
2019-07-23 20:56:36 +02:00
Anderson Mesquita ba4a7dd865 Fix deprecation warning 2019-07-22 18:45:11 -04:00
Anderson Mesquita fd0cac5957 Fix deprecation warning
Original class:
https://github.com/jhy/jsoup/blob/9e36f9e/src/main/java/org/jsoup/examples/HtmlToPlainText.java
2019-07-22 18:34:01 -04:00
ByteHamster 33ba9baa35 Added quick discovery fragment 2019-07-22 22:09:39 +02:00
ByteHamster c7f92b7c71 Redesigned add feed page 2019-07-22 20:52:28 +02:00
H. Lehmann eaa1527fac
Merge pull request #3278 from ByteHamster/empty-view
Updated empty views
2019-07-22 19:05:39 +02:00
ByteHamster 58a3d055df Reduced widget spacing 2019-07-22 12:58:53 +02:00
ByteHamster 94ba9dfd46 Using EmptyViewHandler for chapters fragment 2019-07-22 12:49:16 +02:00
Anderson Mesquita 28c7858387 Add serialVersionUID to all exceptions
For more info, see [1].

[1]: https://stackoverflow.com/questions/146715/use-the-serialversionuid-or-suppress-warnings
2019-07-21 23:37:01 -04:00
Anderson Mesquita f484b7965c Reformat exceptions
This also makes the variable and attribute names consistent with the
standard `Exception` class.
2019-07-21 23:36:00 -04:00
Anderson Mesquita 6a804525f3 Change default rewind time to 10s
This allows the user to better search through an episode, by allowing
them to rewind less than what was just forwarded. It is also aligned
with how other apps out there behave.

Closes: #3262
2019-07-14 13:29:24 -04:00
Anderson Mesquita c38d7bad6b Reword "Mark as seen" to "Remove 'new' flag"
This avoids the confusion between "Mark as seen" and "Mark as played".

Closes: #3225
2019-07-14 11:16:52 -04:00
H. Lehmann 9fe4fed874
Merge pull request #3233 from jas14/pad-scrubber
Pad scrubber on large devices
2019-07-13 17:01:36 +02:00
H. Lehmann ed338edea4
Merge pull request #3266 from ByteHamster/remove-flattr
Removed Flattr support
2019-07-13 15:04:05 +02:00
ByteHamster 641ee60cbf Removed Flattr support 2019-07-12 19:28:22 +02:00
ByteHamster b5b2bccda4 Added total space to storage select dialog 2019-07-12 18:59:43 +02:00
H. Lehmann 9f6529d4bc
Merge branch 'develop' into 2747-completed-downloads-update 2019-07-11 12:43:30 +02:00
damoasda 9b7a61471d Queue: Keep sorted #1556 2019-07-09 08:55:46 +02:00
Andrew Gaul 24e4211da1 Fix within last year check in formatAbbrev
Previously this method considered a date within the last 365 days to
be in the same year as today.  Instead compare the actual years to
avoid confusion.  Fixes #3255.
2019-07-03 13:18:05 -07:00
Joe Stein f047c23c09 Gracefully handle bad ID3 chapter URLs 2019-07-01 13:40:46 +02:00
Joe Stein 4bc8821845 Increase scrubber padding for large devices 2019-07-01 12:31:14 +02:00
Wagubi Brian 7f1f725bfe validate username for characters not accepted. 2019-06-26 04:50:18 +03: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
ByteHamster f3cd43b972 Cleanup 2019-06-14 10:45:45 +02:00
ByteHamster 8f11f8a271 Updated feed settings screen 2019-06-14 00:38:34 +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 d2b3d5f220 remove german translation 2019-06-07 09:47:55 +02:00
H. Lehmann 2949fe61b6
Merge pull request #3218 from ByteHamster/mobile-download
Clarified mobile updates setting
2019-06-06 00:18:51 +02:00
ByteHamster 6712711ab2 Clarified setting 2019-06-05 23:50:52 +02:00
H. Lehmann 80ecfacb81
Merge pull request #3215 from ByteHamster/crashes
Fixed ArrayIndexOutOfBoundsException
2019-06-03 12:40:45 +02:00
ByteHamster ba96311e87 Fixed ArrayIndexOutOfBoundsException 2019-06-03 12:32:38 +02:00
ByteHamster 6a83d2a434 Handle disabled auto update 2019-06-03 12:19:34 +02:00
H. Lehmann 405db1f169
Merge pull request #3164 from ByteHamster/work-manager
Work manager
2019-06-03 11:59:23 +02:00
ByteHamster 5630bf756d Revert "Start WorkManager on upgrade"
This reverts commit d372aa9577.
2019-06-03 11:44:18 +02:00
ByteHamster d372aa9577 Start WorkManager on upgrade 2019-06-03 11:31:53 +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
H. Lehmann 18d297a0e5
Merge pull request #3210 from ByteHamster/eventbus-annotation
Use annotation processor for EventBus
2019-05-28 17:52:39 +02:00
H. Lehmann cb3b3ac578
Merge pull request #3174 from skitt/spread-smart-shuffle
Smart shuffle: spread episodes evenly
2019-05-28 17:44:12 +02:00
ByteHamster ce8adc4b26 Use annotation processor for EventBus 2019-05-28 17:26:09 +02:00
alimemonzx 83a6d70387 bugfix #3009 - Podcast's feed search results listed in an odd order (#3128) 2019-05-28 16:44:18 +02:00
H. Lehmann 8380c18543
Merge pull request #2709 from brad/fix-2359
Display cover art for media in the widget
2019-05-28 16:29:43 +02:00
ByteHamster 88854ea6ba Make sure to clear old icon if loading fails 2019-05-28 16:23:46 +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
ByteHamster 81a3d756eb Sort options: 'old to new' instead of 'ascending' 2019-05-27 21:09:55 +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
Joe Stein effa17c41d Fix scheduling tasks on shutdown executor 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
ByteHamster 73744e3d4c Merge branch 'develop' into eventbus-v3 2019-05-19 18:59:03 +02:00
Martin Fietz 135df61692
Merge pull request #3159 from andersonvom/3024-itunes-duration-format
Handle iTunes single-number duration format
2019-05-19 13:40:20 +02:00
H. Lehmann 6e29c37360
Merge pull request #3108 from ByteHamster/attr-redeclaration
Fixed attr redeclaration
2019-05-19 12:07:03 +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
Joe Stein 49ef28877d Enable autodownload over Ethernet 2019-05-18 12:11:39 +02:00
ByteHamster b47f6e8f3c Moved notification setup to new class 2019-05-17 15:16:22 +02:00
ByteHamster 785dff0698 Added logging in cases where service did not know how to handle intent 2019-05-17 14:42:21 +02:00
ByteHamster 1f8f2be9ab Do not try to display notification two times
The Thread is interrupted which leads to an empty notification
2019-05-17 14:35:19 +02:00
orionlee 7c4b98be59 Cherry-Pick: Add a generic java8-like Optional class
For use with RxJava2 where null was to be returned (RxJava2 requires non-null).
Cherry-picked from PR #2954
2019-05-17 09:53:51 +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
Stephen Kitt 0a1a54d28d
Smart shuffle: spread episodes evenly
This reworks the sort algorithm used in smart shuffle so that episodes
are spread out evenly, which avoids episodes bunching up at the bottom
of the queue when one feed has more episodes than others, and avoids
running through feeds with few episodes very quickly.

Signed-off-by: Stephen Kitt <steve@sk2.org>
2019-05-09 18:38:34 +02:00
ByteHamster bf6f6376db Do not deadlock
The Android internal media player blocks its `start()` call until the
seek listener completes. The seek listener is called on the main thread
even though `start()` is called on the executor. This makes the main
thread wait for the lock and the executor (which has the lock) wait for the
main thread to finish the call to the listener.
2019-05-08 19:18:44 +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 c6e81391b2 Updated translations 2019-05-07 15:56:29 +02:00
ByteHamster 5a99580985 Do not deadlock on seek when using Sonic
Callbacks are called on the thread that created the MediaPlayer.
For Sonic, this is the executor. For ExoPlayer, this is the main thread.
When calling executor.submit, every thread waiting for the runnable to
complete gets blocked.

Because the callback is called in the thread that created the player,
we can simply remove the call to executor.submit and still be sure
that a background thread is used.
2019-05-07 15:32:48 +02:00
ByteHamster c16bbdfc96 Do not block when using Sonic+Sleep timer 2019-05-07 14:58:34 +02:00
ByteHamster cd5224d01b Charging constraint is related to auto download only 2019-05-06 23:08:45 +02:00
ByteHamster dbda4a9aa8 Using WorkManager for feed updates 2019-05-06 23:04:19 +02:00
Anderson Mesquita fb3bfa9f80 Handle iTunes single-number duration format
Apple says this [1] about the `<itunes:duration>` tag:

    If you specify a single number as a value (without colons), Apple
    Podcasts displays the value as seconds.

This commit makes it also handle this single-number format.

Closes: #3024

[1]: https://help.apple.com/itc/podcasts_connect/#/itcb54353390
2019-05-05 00:04:06 -04:00
Anderson Mesquita 9b41139709 Extract DurationParser
This makes it easier to test the logic of parsing duration strings.

References: #3024
2019-05-05 00:04:06 -04:00
Anderson Mesquita a4c852dac0 Extract methods in NSITunes
References: #3024
2019-05-04 13:59:05 -04:00
ByteHamster 01616dd502 Added names for threads
So it is easier to identify problems in bug reports
2019-05-03 12:17:05 +02:00
ByteHamster d67aa6386e Updated string
Closes #3145
2019-05-01 11:02:29 +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 6187945e8f add a time conversion class
convert time depending on current playback speed and preferences
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
ByteHamster 5d124c476a Fixed sleep timer ANR (Closes #3139) 2019-04-27 10:50:13 +02:00
ByteHamster 0925078770 Translation updates 2019-04-24 23:19:52 +02:00
H. Lehmann 017a6ab3bc
Merge pull request #2957 from orionlee/bugfix_app_anr_in_auto_feed_update_2956
Prevent app crash during some automatic feed update
2019-04-19 12:02:25 +02:00
Brad Pitcher a349865af3
use multi-line TextView for "No media playing" 2019-04-18 22:08:49 -07:00
Brad Pitcher 73c39fc3d0
no need to spell out android.view.View 2019-04-18 21:48:33 -07:00
Brad Pitcher ee6e5ed5d0
space before ( for better style 2019-04-18 21:45:59 -07:00
Brad Pitcher bf54e0e7c7
avoid "app not responding" errors loading widget image 2019-04-18 21:45:11 -07:00
Brad Pitcher a60b6efc51
use ic_launcher_foreground for widget when nothing is playing 2019-04-18 21:43:35 -07:00
ByteHamster 2fca491f53 Made sure that there is not an ANR when switching media player 2019-04-17 20:52:13 +02:00
ByteHamster 1fe33fb351 Fixed NetworkOnMainThreadException 2019-04-16 22:50:59 +02:00
ByteHamster 0339ce7bca Do not set player status before player object is created 2019-04-14 13:56:04 +02:00
ByteHamster 28f424e3c1 No locks are needed if everything is executed on main thread 2019-04-14 13:42:32 +02:00
Brad Pitcher 25915453ba
hide widget text when displaying < 3 columns 2019-04-12 17:56:53 -07: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 11b085c68b Fixed attr redeclaration 2019-04-12 10:41:49 +02:00
H. Lehmann b4f04f6d6d
Merge pull request #3105 from ByteHamster/style-repetition
Reduced repetition in styles.xml
2019-04-12 10:36:06 +02:00
Brad Pitcher 64ddf6ec96
use app_icon_size for layout width on widget components 2019-04-11 22:26:01 -07:00
Brad Pitcher 210afaeb3c
fix widget image glider 2019-04-11 22:25:24 -07:00
ByteHamster cfd0af55c4 Removed nb translation 2019-04-11 21:54:57 +02:00