Commit graph

3834 commits

Author SHA1 Message Date
Stypox
8bfd7fd6a3 Improve javadoc for getAudioStreamFor 2023-12-07 16:40:32 +01:00
AudricV
213eebfc28 Use ListHelper to get secondary audio streams for video-only streams
Instead of searching for the first audio stream matching a compatible media
format, this change makes SecondaryStreamHelper.getAudioStreamFor use methods
isLimitingDataUsage, getAudioFormatComparator and getAudioIndexByHighestRank of
ListHelper to get an audio stream which can be muxed into a video-only stream,
if available.

This allows users to download videos with the highest audio quality available
if no resolution limit on mobile data usage has been set.

The order of formats used to search a compatible audio stream has been kept.
2023-09-24 18:23:45 +02:00
AudricV
2bbfcffb73 Make isLimitingDataUsage method of ListHelper package-private and fix some typos in the class 2023-09-24 18:23:44 +02:00
Tobi
80d25720be Merge pull request #9987 from Edwardsoen/add_high_resolution_to_default_option
Include a high-resolution option in the default resolution settings.
2023-09-24 17:54:18 +02:00
TobiGr
7ab1e7f244 Use "done" button to close license dialogs.
Rename string res "recaptcha_done_button" to "done".
2023-09-23 13:56:49 +02:00
TobiGr
d5578b4099 Restore license dialog buttons to open the SoftwareComponent's website
Do not keep the active License but the active SoftwareComponent.
2023-09-23 13:49:09 +02:00
TobiGr
7fe259cbbe [AboutFragment / LicenseFragment] Fix license restore after rotation
Do not restore last opened license after a rotation change when the license was closed earlier.

This commit adds onCancelListener and onDismissListener to the AlertDialogs which are used to display the licenses.
2023-09-23 13:49:09 +02:00
Stypox
80c31e81ec Update extractor and remove DeobfuscateException
In ErrorInfo it was treated separately from other ParsingExceptions, including by showing a customized message, which has now been removed.
2023-09-22 10:43:37 +02:00
Stypox
b5b5017224 Make question mark localizable 2023-09-22 10:14:45 +02:00
Stypox
ab8b817b9b Use @DrawableRes in PicassoHelper 2023-09-22 10:14:45 +02:00
Stypox
b7f196d920 Fix loading images from db even if disabled 2023-09-22 10:14:44 +02:00
Stypox
7828cd233d Separate imageListToDbUrl from choosePreferredImage
imageListToDbUrl should be used if the URL is going to be saved to the database, to avoid saving nothing in case at the moment of saving the user preference is to not show images.
2023-09-22 10:14:44 +02:00
Stypox
873e10c957 Fix possible NPE in PlayQueueNavigator 2023-09-22 10:14:44 +02:00
Stypox
e97da723fc Add documentation and fix SonarCloud issue 2023-09-22 10:14:44 +02:00
Stypox
f7fe8adcdd Further improve image resolution strategy
Now using multiple comparison steps instead of magic values
2023-09-22 10:14:44 +02:00
Stypox
3f39514e3b Display all thumbnails in description tab 2023-09-22 10:14:44 +02:00
Stypox
4164bf36f6 Implement better image selection strategy 2023-09-22 10:14:44 +02:00
Stypox
a6a7c2271a Add image quality preference 2023-09-22 10:14:43 +02:00
Stypox
46109ff3b9 Support obtaining multiple images from the extractor 2023-09-22 09:57:33 +02:00
TobiGr
f4f2a8ed73 Improved accessibility of player interfaces 2023-09-21 12:20:00 +02:00
Stypox
f6714ac356 Merge pull request #10435 from TeamNewPipe/imp/codequality
Improve codequality
2023-09-20 21:24:44 +02:00
TobiGr
919c274820 Fix doc formatting 2023-09-20 19:44:23 +02:00
Isira Seneviratne
b99dcafba7 Switch to Files.createDirectories() 2023-09-20 19:44:23 +02:00
TobiGr
af715dd7ee Remove useless override 2023-09-20 15:42:09 +02:00
TobiGr
fef0fa7b20 Reorder the modifiers to comply with the Java Language Specification. 2023-09-20 15:41:57 +02:00
TobiGr
ce58a60397 Add comments and annotations 2023-09-20 15:41:21 +02:00
TacoTheDank
2d5d209d6c Replace MathUtils.clamp with Kotlin coerceIn 2023-09-19 16:32:37 -04:00
Stypox
f9e1da9c10 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
4b7d1c4151 Simplify retrieveMediaFormatFromContentTypeHeader
Also check for nullity
2023-09-19 15:33:49 +02:00
TobiGr
4bbcfdc3e5 Fix three memory leaks
Add documentation to BaseFragment.initViews(View, Bundle) and BaseFragment.initListeners()
2023-09-19 00:13:16 +02:00
TobiGr
529bdb1aae Fix previous ActionBar title visible for a few miliseconds when opening ChannelFragment 2023-09-18 23:22:32 +02:00
TobiGr
60a97b0486 Apply review
Co-Authored-By:  Audric V <74829229+AudricV@users.noreply.github.com>
2023-09-18 23:22:32 +02:00
TobiGr
b134d75549 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
AudricV
5af4db41ae 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
AudricV
88419ec7b1 Always show the About tab and support having no description 2023-09-18 23:22:32 +02:00
TobiGr
43054e6d67 Extract actual feed loading code into separate method
Increase readability
2023-09-18 23:22:32 +02:00
TobiGr
2f65b4f823 Add missing @Override annotations to setupMetadata() implementations 2023-09-18 23:22:32 +02:00
Stypox
43097e4486 Update NewPipeExtractor and adapt imports 2023-09-18 23:22:32 +02:00
Stypox
5325226b33 Fix loading feed when a channel tab is empty 2023-09-18 23:22:32 +02:00
Stypox
9a70693152 Show snackbar with feed loading errors 2023-09-18 23:22:32 +02:00
Stypox
b26c5a7d5c 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
486664f293 Add avatar and bannner URLs to channel About tab 2023-09-18 23:22:32 +02:00
Stypox
5613a89099 Add space above channel description (About tab) 2023-09-18 23:22:32 +02:00
ThetaDev
36b11db357 feat: filter fetched channel tabs 2023-09-18 23:22:32 +02:00
ThetaDev
8f7cbc93ef feat: add playlist controls to channel tab 2023-09-18 23:22:32 +02:00
Stypox
b900ddaadf Fix some code smells 2023-09-18 23:22:32 +02:00
Stypox
fc402a8742 Fix channel tabs in main page setting title themselves 2023-09-18 23:22:32 +02:00
Stypox
aa4ec2f39e 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
ThetaDev
6c60ef9a9c fix: notification menu option disappears when switching tabs 2023-09-18 23:22:32 +02:00
Stypox
559a1a46e1 Move channel header to collapsible app bar 2023-09-18 23:22:32 +02:00