Commit Graph
10895 Commits
Author SHA1 Message Date
TobiGr 8bf2d996ea Reorder the modifiers to comply with the Java Language Specification. 2023-09-20 15:41:57 +02:00
TobiGr 748c2babe9 Add comments and annotations 2023-09-20 15:41:21 +02:00
TobiandGitHub 6859f73c54 Merge pull request #10224 from TacoTheDank/moreKotlinMath
Replace MathUtils.clamp with Kotlin coerceIn
2023-09-20 11:04:54 +02:00
TacoTheDank b1faed586d Replace MathUtils.clamp with Kotlin coerceIn 2023-09-19 16:32:37 -04:00
StypoxandGitHub 725c18eada Merge pull request #10165 from TeamNewPipe/fix/media-format
Fix downloads of streams with missing MediaFormat
2023-09-19 15:54:12 +02:00
Stypox 992bb5d7be Simplify retrieveMediaFormatFromContentTypeHeader
Also check for nullity
2023-09-19 15:33:49 +02:00
StypoxandGitHub 9e353f1cdc Merge pull request #10394 from TeamNewPipe/fix/memory-leaks
Fix memory leaks and add documentation
2023-09-19 14:17:23 +02:00
TobiGr 8f83e39970 Fix three memory leaks
Add documentation to BaseFragment.initViews(View, Bundle) and BaseFragment.initListeners()
2023-09-19 00:13:16 +02:00
StypoxandGitHub 0eae9e7cdc Merge pull request #9182 from Theta-Dev/channel-tabs
Add support for channel tabs
2023-09-18 23:46:13 +02:00
TobiGrandStypox 031b893196 Remove unused content not supported TextView 2023-09-18 23:22:32 +02:00
TobiGrandStypox 64da7a06c0 Fix previous ActionBar title visible for a few miliseconds when opening ChannelFragment 2023-09-18 23:22:32 +02:00
57eaa1bbe1 Apply review
Co-Authored-By:  Audric V <74829229+AudricV@users.noreply.github.com>
2023-09-18 23:22:32 +02:00
TobiGrandStypox 109d06b4bb Deduplicate code to initialize ClickListeners on playlist controls
Add the separate utility class PlayButtonHelper to handle the initialization of the listeners.
The ClickListeners on playlist controls had different behaviours. This commit fixes that.

The commit also refactors the way how the app determines whether it is started for the first time. The previous version was not clean and recent in this PR caused it to fail.
2023-09-18 23:22:32 +02:00
AudricVandStypox 0d9910cbbe Fix SubscriptionManagerTest tests
The breakage of these tests is related to the channel tabs changes.

The testRememberRecentStreams test method has been removed, as it doesn't seem
to be relevant anymore to managing subscriptions.
2023-09-18 23:22:32 +02:00
AudricVandStypox 8fbc8ffc7c Remove unneeded German translation 2023-09-18 23:22:32 +02:00
AudricVandStypox f2ee3859ab Hide the upload date element on the About tab
This empty element should be always hidden for this tab, as there is no upload
date available for channels.
2023-09-18 23:22:32 +02:00
AudricVandStypox 89dc44be61 Always show the About tab and support having no description 2023-09-18 23:22:32 +02:00
TobiGrandStypox 6ab8716e69 Extract actual feed loading code into separate method
Increase readability
2023-09-18 23:22:32 +02:00
TobiGrandStypox 5c7c382323 Add missing @Override annotations to setupMetadata() implementations 2023-09-18 23:22:32 +02:00
Stypox 78b4b9441e Update NewPipeExtractor and adapt imports 2023-09-18 23:22:32 +02:00
Stypox 9e55014a13 Fix wrongly themed channel header
Since it is embedded in the app bar and has red as background color, it should be themed in the same way as the toolbar.
2023-09-18 23:22:32 +02:00
Stypox 6f23b56b06 Use consistent name for livestreams tab in settings keys 2023-09-18 23:22:32 +02:00
Stypox 1519527356 Fix loading feed when a channel tab is empty 2023-09-18 23:22:32 +02:00
Stypox 6b3a178f2a Show snackbar with feed loading errors 2023-09-18 23:22:32 +02:00
Stypox 604419dd1f Make channel banner placeholder match YouTube's size
YouTube's "Desktop Max" thumbnails are 2560x423, while our previous placeholder banner was 2550x427. The extractor actually returns a lower resolution "Desktop Max" banner at 1060x175, but the ratio wrt 2560x423 is off by ~0.1%

The PNG was optimized with OptiPNG
2023-09-18 23:22:32 +02:00
Stypox c48e702a50 Improve placeholder channel banner handling
Now the placeholder gets hidden if there is no banner url or the user disabled images, to save space
2023-09-18 23:22:32 +02:00
Stypox 1061bce4f3 Add avatar and bannner URLs to channel About tab 2023-09-18 23:22:32 +02:00
Stypox 013d513450 Add space above channel description (About tab) 2023-09-18 23:22:32 +02:00
ThetaDevandStypox dca32efadf add channel banner placeholder 2023-09-18 23:22:32 +02:00
ThetaDevandStypox 28d952a643 feat: filter fetched channel tabs 2023-09-18 23:22:32 +02:00
ThetaDevandStypox a2a717bd49 update NPE 2023-09-18 23:22:32 +02:00
ThetaDevandStypox 753a92055c feat: add playlist controls to channel tab 2023-09-18 23:22:32 +02:00
Stypox 371f986773 Fix some code smells 2023-09-18 23:22:32 +02:00
Stypox a1e8b9be4e Fix channel tabs in main page setting title themselves 2023-09-18 23:22:32 +02:00
Stypox c076a0f771 Channels are now an Info
The previous "main" tab is now just a normal tab returned in getTabs().
Various part of the code that used to handle channels as ListInfo now either take the first (playable, i.e. with streams) tab (e.g. the ChannelTabPlayQueue), or take all of them combined (e.g. the feed).
2023-09-18 23:22:32 +02:00
ThetaDevandStypox dfbd39e898 fix: limit channel header height 2023-09-18 23:22:32 +02:00
ThetaDevandStypox b5893f3fa3 fix: notification menu option disappears when switching tabs 2023-09-18 23:22:32 +02:00
Stypox e3614cb932 Move channel header to collapsible app bar 2023-09-18 23:22:32 +02:00
ThetaDevandStypox 193c3e5b3d fix: NPE in ChannelFragment::onSaveInstanceState 2023-09-18 23:22:32 +02:00
ThetaDevandStypox c03c344f49 refactor: rename ChannelInfo to ChannelAbout
fix: localize about tab name
2023-09-18 23:22:32 +02:00
ThetaDevandStypox 25e3031830 cleanup: remove empty constructor from ChannelFragment 2023-09-18 23:22:31 +02:00
ThetaDevandStypox b7911a8fd8 remove fragment_channel_info 2023-09-18 23:22:31 +02:00
ThetaDevandStypox 88384dc35e update extractor 2023-09-18 23:22:31 +02:00
ThetaDevandStypox 39b4ed082c refactor: common code from ChannelInfo/Description -> BaseInfoFragment 2023-09-18 23:22:31 +02:00
ThetaDevandStypox d87aa23ae0 update NewPipeExtractor 2023-09-18 23:22:31 +02:00
ThetaDevandStypox be548dcb52 fix: channel tab title not being set 2023-09-18 23:22:31 +02:00
ThetaDevandStypox 4357a34339 fix: ChannelFragment: save last tab 2023-09-18 23:22:31 +02:00
ThetaDevandStypox 2c03ba204e refactor: adjustments to updated tab extractor API 2023-09-18 23:22:31 +02:00
ThetaDevandStypox 2c98d079de fix: cache channel data 2023-09-18 23:22:31 +02:00
ThetaDevandStypox 16cd47fa2e fix: missing album tab key 2023-09-18 23:22:31 +02:00