Commit graph

9541 commits

Author SHA1 Message Date
Mohammed Anas
f0441b1c38 Merge pull request #7776 from litetex/merged-master-into-dev-v0.21.16
Merge ``master`` branch back into ``dev``
2022-02-03 23:41:20 +03:00
Alberto Mosconi
8429d09cc9 Move translated READMEs to subfolder (#7784) 2022-02-03 20:33:27 +00:00
litetex
2441e59297 Fixed merge conflict
Co-authored-by: Mohammed Anas <triallax@tutanota.com>
2022-02-03 21:06:25 +01:00
litetex
26fa4018d6 Merge remote-tracking branch 'upstream/master' into experimental 2022-02-01 22:05:19 +01:00
Mohammed Anas
26d2dbd7c3 Merge pull request #7753 from TeamNewPipe/release/0.21.16
Release 0.21.16
2022-02-01 16:18:52 +03:00
TobiGr
010851c030 Release 0.21.16 (982) 2022-02-01 13:44:19 +01:00
TobiGr
3e83ad957d Update NewPipe Extractor to 0.21.13 2022-02-01 13:41:12 +01:00
Robin
eaf30551ae Merge pull request #7661 from TiA4f8R/livestreams-improvements
Increase playlist stuck target duration coefficient and catch BehindLiveWindowExceptions properly
2022-02-01 11:38:12 +01:00
TiA4f8R
fda5eb6182 Add JavaDoc for PlayerDataSource.PLAYLIST_STUCK_TARGET_DURATION_COEFFICIENT 2022-01-30 20:42:02 +01:00
TiA4f8R
a8c06bb435 Apply suggested changes and remove the CustomHlsPlaylistTracker class 2022-01-30 20:42:02 +01:00
TiA4f8R
79ea722908 Suppress SonarLint NullPointerException warnings in CustomHlsPlaylistTracker
They seem to be wrong, by looking at the class work and at the return of CustomHlsPlaylistTracker's methods.
2022-01-30 20:42:02 +01:00
TiA4f8R
a03872cb51 Use a custom HlsPlaylistTracker, based on DefaultHlsPlaylistTracker to allow more stucking on HLS livestreams
ExoPlayer's default behavior is to use a multiplication of target segment by a coefficient (3,5).
This coefficient (and this behavior) cannot be customized without using a custom HlsPlaylistTracker right now.

New behavior is to wait 15 seconds before throwing a PlaylistStuckException.
This should improve a lot HLS live streaming on (very) low-latency livestreams with buffering issues, especially on YouTube with their HLS manifests.
2022-01-30 20:42:01 +01:00
TiA4f8R
76fdba9c9d Catch properly BehindLiveWindowExceptions
Instead of trying to reload the play queue manager and then throwing an error, BehindLiveWindowExceptions now make the app seek to the default playback position, like recommended by ExoPlayer.
The buffering state is shown in this case.

Error handling of other exceptions is not changed.
2022-01-30 20:42:01 +01:00
Radplay
79fa7c5a4f Polish translation of README (#7694)
Co-authored-by: Mohammed Anas <triallax@tutanota.com>
2022-01-30 20:10:53 +03:00
litetex
4bfcf47a81 Merge pull request #7586 from litetex/add-preference-search
Made preferences searchable
2022-01-30 17:08:04 +01:00
litetex
7077184903 Merge pull request #4833 from vkay94/youtube-rewind-forward
YouTube's Fast Forward/Rewind behavior
2022-01-30 17:07:15 +01:00
Stypox
77e4714dd0 Improve HistoryRecordManager tests (#7700)
* Improve HistoryRecordManager tests

* Improve shuffle as requested
2022-01-27 14:43:51 +01:00
Stypox
d5d4614df1 Merge pull request #7538 from ktprograms/fix-queue-channel-details-not-in-db
Load uploaderUrl when showing Channel Details from Play Queue
2022-01-26 09:58:32 +01:00
litetex
e76909f344 Code cleanup
Co-authored-by: Stypox <stypox@pm.me>
2022-01-25 20:47:53 +01:00
litetex
3e23aa0071 Fixed "Changing the seeks duration does not update the displayed seconds" 2022-01-25 20:44:49 +01:00
litetex
61fbcb7a1c Merge pull request #7693 from TiA4f8R/fix-first-item-play-queue-always-played
Fix first item always played in the play queue when reloading play queue manager
2022-01-25 19:55:10 +01:00
Stypox
7040a6409f Merge pull request #7678 from TacoTheDank/gradleDeprecations
Fix some gradle deprecations
2022-01-25 10:17:09 +01:00
ktprograms
08cb92b40d Load uploaderUrl when showing Channel Details from Play Queue
This checks if the uploaderUrl is in the database, if not it gets the
uploaderUrl and puts it in the database. This is similar to the fetching
of uploaderUrl when it doesn't exist done in #6919.

Also use createNotification when error occurs in getStreamInfo.
2022-01-25 11:00:34 +08:00
TiA4f8R
e83d964fca Fix first item played in playlists when switching player type or resolution
The issue was caused by an ExoPlayer change, which when setting a media source, resets the current playback position and the current window index by default.

Also set player recovery in more places to fix playback position not propely set in some cases after a player type switch.
2022-01-24 21:40:16 +01:00
litetex
8ab45acf82 Use view binding inside `PreferenceViewHolder` 2022-01-24 21:08:52 +01:00
litetex
a42886516b Use ViewBinding 2022-01-24 21:08:52 +01:00
litetex
36524475b8 Fixed imports 2022-01-24 21:08:51 +01:00
litetex
5453617c81 Removed breadcrumbs customization 2022-01-24 21:08:51 +01:00
litetex
ef4bb60bea Code improvements
* Renamed methods so that they are more understandable
* Removed ``SearchIndexItem``
2022-01-24 21:08:50 +01:00
litetex
07d8adf7e6 Improved doc 2022-01-24 21:08:50 +01:00
litetex
87b5ae3f5c Moved `FuzzyScore` to original Apache package 2022-01-24 21:08:49 +01:00
litetex
64447e01ec Improved documentation 2022-01-24 21:08:48 +01:00
litetex
5186b1f9a8 Fixed problems with Android's lifecycle (restore) 2022-01-24 21:08:48 +01:00
litetex
20680d5668 Fixed gitignore and commited missing file 2022-01-24 21:08:47 +01:00
litetex
54f1fbbe32 Fixed variable name 2022-01-24 21:08:47 +01:00
litetex
31a9718c50 Removed unused import 2022-01-24 21:08:46 +01:00
litetex
bbab3a45cc Fixed some sonar warnings 2022-01-24 21:08:45 +01:00
litetex
d7b316863a Made debug settings searchable (debug only)
* Consolidated main-setttings into a single file
* Debug settings are only enabled in the DEBUG build
* Moved LeakCanary (debug) specific stuff into a small class that's only shipped with the debug build
* Other minor fixes
2022-01-24 21:08:45 +01:00
litetex
c62c8c077d Code rework 2022-01-24 21:08:44 +01:00
litetex
19adb84d7d Code cleanup + indexing improvements
* Removed unused method
* Only index all settings once -> Saves performance
* Fixed some SonarLint reported problems
2022-01-24 21:08:44 +01:00
litetex
5cd3fcb269 Added fuzzy searching + Some minor code refactoring 2022-01-24 21:08:43 +01:00
litetex
499e222822 Fine tuning 2022-01-24 21:08:42 +01:00
litetex
3a26dee3f3 Moved reset-reCAPTCHA-cookie to cache tab and made it read-only
so that the search works as expected
2022-01-24 21:08:42 +01:00
litetex
73d3fd9ae1 Added resource files
Forgot to commit them before...
2022-01-24 21:08:41 +01:00
litetex
9af91a7f44 Applied code changes for preference search framework 2022-01-24 21:08:41 +01:00
litetex
ab9f6a816d Added preference search "framework" 2022-01-24 21:08:40 +01:00
litetex
0fedfce411 Code cleanup 2022-01-24 21:08:39 +01:00
litetex
d094b4f11a Abstracted methods for the Android keyboard 2022-01-24 21:08:39 +01:00
litetex
27a58f9cd9 Added credit to the project which inspired the preference search 2022-01-24 21:08:38 +01:00
litetex
4bbc0e413d Removed dead code 2022-01-24 21:08:38 +01:00