litetex
1ecb0ca081
Merge pull request #7977 from Stypox/error-notification-kitkat
...
Fix error notification on KitKat
2022-03-25 20:00:48 +01:00
karyogamy
b81eb35f3d
added: documentations on lifecycles for FailedMediaSource and LoadedMediaSource.
...
fixed: onPlaybackSynchronize to rewind when not playing, which was incorrectly removed in previous commit.
fixed: sonar and checkstyle issues.
2022-03-19 22:40:32 -04:00
Stypox
6e8c9f92cb
Merge branch 'dev' into pr2335
2022-03-19 22:29:10 +01:00
Stypox
3d9d25df52
Remove backoff criteria: it never kicked in
...
It never kicked in since we are never returning a retry() Result, but always either success() or failure() (see createWork() function). Also, there is already a default (exponential backoff starting from 30 seconds), so no need to override it.
2022-03-19 21:55:00 +01:00
karyogamy
69646e5b5d
added: documentations to MediaItemTags and Player.
...
fixed: checkStyle failures.
2022-03-19 15:56:45 -04:00
karyogamy
4e459b3383
updated: ExoPlayer to 2.17.1.
...
added: MediaItemTag for ManagedMediaSources.
added: silent track for FailedMediaSource.
added: keyframe fast forward at initial playback buffer.
added: error notification on silently skipped streams.
2022-03-19 15:56:45 -04:00
litetex
70d9a77e9b
Merge pull request #8073 from Stypox/bump-checkstyle
...
Update checkstyle to 10.0 and fix various related issues
2022-03-19 14:37:52 +01:00
litetex
6d2b5d976d
Merge pull request #8068 from TacoTheDank/lintCleaning
...
Some lint cleaning
2022-03-19 14:37:34 +01:00
litetex
57231382a6
Merge pull request #8066 from TacoTheDank/simpleSeekbarChange
...
Create stub implementation for OnSeekBarChangeListener
2022-03-19 14:37:10 +01:00
Stypox
53f8415e9b
Use @SuppressWarnings for checkstyle suppressions & warnings
...
It's better to use @SuppressWarnings instead of the suppressions file, so that the warning suppression is at the place where it acts.
2022-03-18 23:57:11 +01:00
TacoTheDank
4dafe424cf
De-duplicate showLicense methods
2022-03-18 13:48:07 -04:00
TacoTheDank
bc4a0a575c
Clean up the about package a bit
2022-03-18 13:18:23 -04:00
TacoTheDank
cf213affa2
Annotate some NonNulls, some lint cleaning
2022-03-18 13:15:44 -04:00
TacoTheDank
979a320347
Delete some unused code
2022-03-17 23:26:34 -04:00
TacoTheDank
20bddd8e47
Use Animator.addListener() KTX extension
2022-03-17 22:01:51 -04:00
TacoTheDank
86f335b01f
Create stub implementation for OnSeekBarChangeListener
2022-03-17 21:49:04 -04:00
litetex
67651354d5
Fixed conflicts
2022-03-16 15:58:46 +01:00
litetex
cefb52471f
Better naming
2022-03-16 15:52:30 +01:00
litetex
ee5e0e13b7
Made `onClick
` less (cognitive) complex
2022-03-16 15:52:30 +01:00
litetex
30a8f25d52
Refactored code
2022-03-16 15:47:04 +01:00
XiangRongLin
d348c2099e
stupid checkstyle
2022-03-16 15:47:04 +01:00
XiangRongLin
6a400dda7b
delete unused methods
2022-03-16 15:47:03 +01:00
XiangRongLin
080c4ba680
Extract 2 view click listeners from Player
2022-03-16 15:47:03 +01:00
litetex
37aca3f1c7
Merge pull request #7981 from Stypox/sparse-items-deduplic
...
Deduplicate code for fetching stream info when sparse
2022-03-16 15:18:10 +01:00
litetex
0158f1363b
Merge pull request #7518 from mauriciocolli/remove-icon-duplicates
...
Remove icon duplicates and fix some theming issues
2022-03-15 21:51:04 +01:00
litetex
f47f2d13fa
Merge pull request #5878 from SpinHit/spinhit/addingDeleteConfirmation
...
Add a confirmation button when deleting all files in downloader
2022-03-15 21:49:46 +01:00
litetex
6fe6f4b3e0
Merge pull request #7978 from TacoTheDank/bumpSomeLibraries
...
Update some AndroidX libraries
2022-03-15 21:48:49 +01:00
litetex
00e4631b3b
Merge pull request #7963 from Stypox/android-tv-player
...
Improve player UI and navigability for Android TV
2022-03-15 21:41:48 +01:00
litetex
2e7503ff78
Merge branch 'dev' into bumpSomeLibraries
2022-03-15 21:34:41 +01:00
ktprograms
02fa5aa0fa
Implement appending queue to playlist in main player ( #8008 )
...
This also allows saving a remote playlist locally.
- Add an "Add to playlist" button to the queue menu in the Player.
- Move the appendAllToPlaylist functionality from PlayQueueActivity to
Player.
Fixes : #8004
2022-03-15 18:32:39 +01:00
Stypox
9b4a67276a
Fix comments and rearrange code
2022-03-15 15:20:25 +01:00
Stypox
b607a09125
Merge pull request #7975 from TacoTheDank/updateCheckerRewrite
...
Migrate app update checker to AndroidX Work
2022-03-15 14:20:40 +01:00
Stypox
af89f05011
Merge pull request #7341 from ktprograms/external-play-hide-controls
...
Fix player controls not hiding if resumed from media button
2022-03-15 13:43:35 +01:00
TacoTheDank
b8b97fa6d4
Convert NewVersionWorker to Kotlin
2022-03-03 13:34:35 -05:00
TacoTheDank
71f141f3f8
Migrate CheckForNewAppVersion to Worker (and rename it)
2022-03-03 13:26:57 -05:00
TacoTheDank
81fef1be19
Migrate CheckForNewAppVersion to JobIntentService
2022-03-03 13:24:12 -05:00
TacoTheDank
0f175de599
Kotlin-ize ReleaseVersionUtil, merge with NewVersionManager
2022-03-03 13:21:50 -05:00
TacoTheDank
1602befc51
Move utility methods out of CheckForNewAppVersion
2022-03-03 13:19:06 -05:00
Stypox
162a838afc
Deduplicate code for fetching stream info when sparse
...
Fixes #7941
2022-03-03 16:54:40 +01:00
Stypox
e588abd4e7
Restore handling SPACE as play-pause only in fullscreen
...
When not in fullscreen SPACE should be not handled by the player, and hence result in a scroll down
2022-03-03 10:14:58 +01:00
TacoTheDank
f85b206bdf
Update some AndroidX libraries
2022-03-02 11:01:01 -05:00
Stypox
2a9733fbaf
Fix error notification on KitKat
...
It was crashing due to a drawable icon being used; also use NotificationManagerCompat
2022-03-02 14:14:40 +01:00
Mauricio Colli
96185faca6
Remove manual menu creation from some fragments
...
Doing this programmatically is just a no-go when themes are being set
in some other places (the toolbar is using a custom theme, in this
case), so, instead of hunting down the proper theme, just let the
system do its work.
2022-03-02 12:37:44 +01:00
Stypox
5f16e4ef87
Replace R.string.yes with R.string.ok
...
Android doesn't use yes/no but ok/cancel usually, so this should be done here, too
2022-03-02 12:21:25 +01:00
Spinhit
483dc06ecb
Add confirmation button before deleting all files.
...
Co-authored-by: TiA4f8R <74829229+TiA4f8R@users.noreply.github.com>
2022-03-02 11:31:52 +01:00
karyogamy
ab45efceab
- added: variable load check interval for progressive stream.
...
- added: preferences to allow user setting of above.
2022-03-01 20:14:53 +01:00
kt programs
62c0e6605c
Remember adjustment step size for playback controls (speed and pitch)
...
- Add adjustment_step_key to settings_keys.xml to be used when
saving/loading the step size.
- Remove the global stepSize variable and the code that saves it to
outState/loads it from savedInstanceState because it's now saved to
Shared Preferences.
- Move initially setting step size to setupStepSizeSelector to be
consistent with the other view setup methods, using the value loaded
from Shared Preferences.
- Save the step size to Shared Preferences inside setStepSize.
Fixes : #7031
2022-03-01 16:27:20 +08:00
litetex
f1c6988552
Merge pull request #7952 from TacoTheDank/bumpKotlin
...
Update Kotlin to 1.6.10
2022-02-28 19:42:38 +01:00
Stypox
146062d921
Fix player pop-ups not giving feedback on touch/focus
2022-02-27 18:49:16 +01:00
Stypox
96c4201929
Fix controls shown below queue/segments list when using DPAD
...
Also invert if
2022-02-27 18:49:16 +01:00
Stypox
a0bbcd2fee
Fix player queue/segments list buttons not focusable with DPAD
...
Now the in-player play queue and the segments list are closeable
2022-02-27 18:49:16 +01:00
Stypox
3f7ba2e3d1
Merge pull request #7565 from haklc/dev
...
Change pitch by semitones
2022-02-27 09:58:38 +01:00
TacoTheDank
678edb1846
Update ktlint to 0.44.0
2022-02-26 16:08:10 -05:00
litetex
ccc3d38c45
Merge pull request #7910 from avently/equalscheck
...
Better equals check
2022-02-26 16:20:27 +01:00
litetex
37517c7dd1
Merge pull request #7570 from TeamNewPipe/improvement/infoItemDialogBuilder
...
Refactor generating InfoItemDialog's
2022-02-26 16:18:39 +01:00
litetex
a95318a4f9
Merge pull request #7349 from TiA4f8R/seamless-transition-players
...
Add seamless transition between background and video players when putting the app in background (for video-only streams and audio-only streams only)
2022-02-26 16:16:18 +01:00
litetex
46fad32837
Merge pull request #7905 from Stypox/fix-room-unused-columns
...
Fix Room warning about unused columns during build
2022-02-26 16:15:01 +01:00
litetex
5be40f62f3
Merge pull request #7904 from Stypox/fix-raw-use-of-parameterized-class
...
Solve Java warning "Raw use of parameterized class"
2022-02-26 16:14:23 +01:00
Stypox
5fea12d8eb
Small code improvements
...
Removed some non-translatable strings and just hardcoded them in the code, like it's being done for other string separators. This also deduplicates some code by using Localization.
Used some Kotlin feature to reduce code.
2022-02-26 10:40:24 +01:00
TacoTheDank
1a000fecd5
Replace CircleImageView with ShapeableImageView
2022-02-23 15:11:25 -05:00
Avently
01e0dd50ad
Added serviceId check while comparing PlayQueues
2022-02-23 00:53:39 +03:00
TobiGr
d3bc184971
Clarify that only StramInfoItems are accepted by the builder
2022-02-21 21:50:30 +01:00
Tobi
c42f29446d
Merge pull request #7924 from litetex/revert-7451
...
Revert "Respect cutouts when playing in MultiWindow"
2022-02-21 21:36:07 +01:00
litetex
1030e09fc1
Merge pull request #7901 from Stypox/player-small-refactor
...
Small refactor in player class
2022-02-21 20:48:03 +01:00
litetex
96b930cd07
Revert "Respect cutouts when playing in MultiWindow"
...
This reverts commit c92a90749e
.
2022-02-21 20:30:56 +01:00
litetex
de08edb831
Merge pull request #7898 from Stypox/regression-arc
...
Have fast seek overlay arc go under system ui
2022-02-21 20:19:22 +01:00
TobiGr
ee477b25e5
Move StreamDialogEntry.openChannelFragment to NavigationHelper
2022-02-20 20:26:27 +01:00
TobiGr
277f21d5b2
Move Classes related to InfoItemDIalog into own package
2022-02-20 20:17:04 +01:00
TobiGr
a7d5d9a1d6
Fix rebase
2022-02-20 20:17:04 +01:00
TobiGr
fd0d76e866
Apply feedback
...
Return this in InfoIrtemDialog.Builder methoods.
Move null checks for InfoIrtemDialog.Builder into constructor.
Fix and add some more docs.
2022-02-20 20:17:04 +01:00
TobiGr
646d8f431c
Use identical method names for creating the InfoItemDialog in Fragments
2022-02-20 20:17:04 +01:00
TobiGr
ef0d562702
Use ErrorActivity to notifiy about errors occourred while loading channel details
2022-02-20 20:17:04 +01:00
TobiGr
962fe9c36d
Use Context instead of Activity
...
Improve docs
2022-02-20 20:17:04 +01:00
TobiGr
50e2385e82
Add default entries automatically
2022-02-20 20:17:04 +01:00
TobiGr
1cd3ef5dba
Extract entries into beginning and end category
2022-02-20 20:17:04 +01:00
TobiGr
80157fc1be
Refactor generating InfoItemDialog's
...
This commit refactors the way `InfoItemDialog`s are generated. This is necessary because the old way used the `StreamDialogEntry` enum for most of the dialogs' content generation process. This required static variables and methods to store the entries which are used for the dialog to be build (See e.g.`enabledEntries` and methods like `generateCommands()`). In other words, `StreamDialogEntry` wasn't an enumeration anymore.
To address this issue, a `Builder` is introduced for the `InfoItemDialog`'s genration. The builder also comes with some default entries and and a specific order. Both can be used, but are not enforced.
A second problem that introduced a structure which was atypical for an enumeration was the usage of non-final attributes within `StreamDialogEntry` instances. These were needed, because the default actions needed to overriden in some cases.
To address this problem, the `StreamDialogEntry` enumeration was renamed to `StreamDialogDefaultEntry` and a new `StreamDialogEntry` class is used instead.
2022-02-20 20:17:04 +01:00
TiA4f8R
c5fc37150d
Update JavaDoc of VideoPlaybackResolver.getStreamSourceType()
2022-02-20 19:40:03 +01:00
TiA4f8R
8932adbf88
Apply suggested change and add a note about data consumption for HLS streams in background
...
ExoPlayer right now fetches HLS video tracks even if you disable them (with setRendererDisabled or setSelectionOverride).
See issue 9282 of ExoPlayer's issue tracker for more information.
2022-02-20 19:40:03 +01:00
TiA4f8R
d27d36b76a
Adress requested changes
2022-02-20 19:40:02 +01:00
TiA4f8R
ba804c7d4a
Use a enum to understand better what source type is used.
...
This commit also allows a seamless transition for livestreams.
2022-02-20 19:40:02 +01:00
TiA4f8R
3db37166b4
Apply suggestion
2022-02-20 19:40:02 +01:00
TiA4f8R
bf02a569ee
Fix a NullPointerException when the current metadata is null
...
Reload the play queue manager and set the recovery in this case, like on the current behavior (without this PR).
2022-02-20 19:40:02 +01:00
TiA4f8R
a1c5c94753
Add some comments and a JavaDoc
2022-02-20 19:40:01 +01:00
litetex
7a356412d5
Fixed typo
2022-02-20 19:40:01 +01:00
litetex
bb27bf9d34
Resolver: Cleaned up `isVideoStreamVideoOnly
`
...
* Replaced by ``wasLastResolvedVideoAndAudioSeparated``
* Uses an ``Optional`` instead (we can't determine if the video and audio streams are separated when we did not fetch it)
2022-02-20 19:38:41 +01:00
litetex
a489f40b76
Fixed checkstyle problems
...
Unable to compile!
* Cleaned up ``getMostCompactAudioIndex`` and ``getHighestQualityAudioIndex`` into a new method ``getAudioIndexByHighestRank``
* Removed unreadable code and use Java Streams API
* Tests work as expected
2022-02-20 19:38:40 +01:00
litetex
8ed87e7fbb
Improved `ListHelper#getSortedStreamVideosList
`
2022-02-20 19:38:40 +01:00
TiA4f8R
cc96ac173c
Apply suggestion
2022-02-20 19:38:40 +01:00
TiA4f8R
79f8270c35
Prefer video-only streams to video streams
...
Prefering video-only streams to video streams for our player will allow us to make seamless transitions on 360 and 720p qualities on YouTube.
External players and the downloader are not affected by this change.
2022-02-20 19:38:40 +01:00
TiA4f8R
336f9f3813
Add seamless transition between background player and video players (for video-only and audio-only streams only)
...
This is only available when playing video-only streams (and when there is no audio stream and only video streams with audio) and audio-only streams.
For more details about which conditions are required to get this transition, look at the changes in the useVideoSource(boolean) method of the Player class.
2022-02-20 19:38:39 +01:00
Avently
835c5e9d43
Better equals check
...
It ensures that queues are not the same. Without this check when you have multiple videos in the backstack and navigating back via Back button you'll get duplicated videos
2022-02-19 22:12:31 +03:00
Stypox
4789cf6c31
Use Java streams in AbstractInfoPlayQueue
2022-02-19 18:01:16 +01:00
Stypox
5f1f52b6ce
Remove useless constructor in *PlayQueue
...
Also removes unused <> parameter in AbstractInfoPlayQueue and deduplicates constructor code in extending classes
2022-02-19 17:49:43 +01:00
Stypox
62abfa96b8
Solve Java warning "Raw use of parameterized class"
2022-02-19 17:30:38 +01:00
Stypox
a8a96b7631
Fix Room warning about unused columns during build
...
The warning was: "The query returns some columns [...] which are not used by ..."
2022-02-19 17:13:57 +01:00
Stypox
af80d96b9e
Merge pull request #7659 from litetex/load-enough-initial-data
...
Load enough initial items (into BaseListFragment and descendants)
2022-02-19 15:43:13 +01:00
Stypox
3c23fb0b13
Small refactor in player class
2022-02-19 13:30:55 +01:00
TobiGr
ff8e44e4f3
Merge branch 'dev' into feature/notifications
2022-02-19 12:34:44 +01:00
Stypox
da12b92d75
Fix fast seek arc not going under system ui
2022-02-19 11:29:33 +01:00
TobiGr
a3f99bd781
Merge branch 'master' into dev
2022-02-19 10:56:19 +01:00