Isira Seneviratne
47f58040d1
Make OnClickGesture an interface.
2022-08-01 06:47:00 +05:30
Isira Seneviratne
311d392386
Use Application instead of Context in FeedViewModel.
2022-07-31 08:37:16 +05:30
Stypox
404c13d4c1
Improve FeedViewModel factory
2022-07-31 08:30:17 +05:30
Isira Seneviratne
5c68c8ece8
Update Lifecycle to 2.5.1.
2022-07-31 08:30:17 +05:30
Isira Seneviratne
4d7a6fb6de
Use WindowMetrics API in VideoDetailFragment and PopupPlayerUi.
2022-07-30 19:22:39 +05:30
Isira Seneviratne
630558ed4f
Use nested functions.
2022-07-30 07:59:36 +05:30
Isira Seneviratne
69942003f7
Sort tags case-insensitively.
2022-07-29 09:21:48 +05:30
Isira Seneviratne
af9c2bd59d
Use stackTraceToString().
2022-07-27 07:54:49 +05:30
Isira Seneviratne
81fb44c45c
Remove uses of setBottomSheetCallback().
2022-07-25 18:44:30 +05:30
TacoTheDank
d66997c2ed
Update Google Material to 1.6.1
2022-07-24 16:51:26 -04:00
TacoTheDank
d7a654fc27
Update AndroidX Fragment to 1.4.1
2022-07-24 15:35:33 -04:00
TacoTheDank
229422bfa9
Update ExoPlayer to 2.18.1
2022-07-24 14:11:31 -04:00
TacoTheDank
8f5d564f84
Migrate NoNonsense-FilePicker to our updated fork
2022-07-24 15:07:31 +02:00
litetex
dcb332e08d
Merge pull request #8624 from TacoTheDank/bumpOkhttp
...
Update OkHttp to 4.10.0
2022-07-24 15:02:08 +02:00
litetex
51e72d1a05
Removed the "(beta)"-tag from services ( #8637 )
2022-07-24 15:57:23 +03:00
litetex
8f37015dbb
Merge pull request #8621 from Stypox/deduplicate-feed
...
Deduplicate SQL queries to get feed streams
2022-07-24 14:52:35 +02:00
Stypox
74df7fcd66
Merge pull request #8670 from Isira-Seneviratne/Update_FocusAwareCoordinator
...
Remove deprecated method calls in FocusAwareCoordinator.
2022-07-23 17:12:29 +02:00
Stypox
bfaf074f4e
Merge pull request #8663 from Isira-Seneviratne/Remove_unnecessary_methods
...
Remove unnecessary methods.
2022-07-23 16:31:28 +02:00
Stypox
3281ed2ef1
Merge pull request #8648 from Isira-Seneviratne/Use_IO_extensions
...
Use IO extensions.
2022-07-22 18:30:51 +02:00
Stypox
b2c2570a85
Merge pull request #8676 from Stypox/fix-channel-placeholders
...
Fix wrong thumbnail used as placeholder for channel
2022-07-22 18:16:42 +02:00
Stypox
f4fe5fcb16
Fix ListHelperTest failure caused by immutable list being used
2022-07-22 16:09:43 +02:00
Stypox
37275e8fe3
Fix wrong thumbnail used as placeholder for channel
2022-07-22 15:13:47 +02:00
Isira Seneviratne
f1dab11f1f
Remove deprecated method calls in FocusAwareCoordinator.
2022-07-21 09:01:19 +05:30
Isira Seneviratne
6d1c61407d
Remove unnecessary method in ChannelFragment.
2022-07-21 08:02:23 +05:30
Isira Seneviratne
8b400b48f7
Refactor notifying method in PlayQueue.
2022-07-21 08:02:23 +05:30
Isira Seneviratne
b845645b80
Use IO extensions.
...
Co-authored-by: Stypox <stypox@pm.me>
2022-07-21 05:15:39 +05:30
Stypox
cacce6d2d0
Merge pull request #8651 from Isira-Seneviratne/Use_limiting_methods
...
Use range-limiting methods.
2022-07-20 15:06:45 +02:00
Stypox
373ee53143
Improve code style
2022-07-20 15:05:25 +02:00
Stypox
344c33d9a1
Merge pull request #8631 from Isira-Seneviratne/Use_collection_factories
...
Use Java 9 collection factories.
2022-07-20 14:52:18 +02:00
Stypox
c5b970cca3
Improve code style in List.of()
2022-07-20 14:50:23 +02:00
Stypox
15947161e6
Merge pull request #8635 from Isira-Seneviratne/Use_stream_sort
...
Use stream sorting.
2022-07-20 11:06:56 +02:00
Isira Seneviratne
394eb92e71
Use coerceIn().
2022-07-20 05:36:01 +05:30
Isira Seneviratne
d62cdc659f
Use MathUtils.clamp().
...
Co-authored-by: Stypox <stypox@pm.me>
2022-07-20 05:36:01 +05:30
Isira Seneviratne
a6cc13845a
Use Map.of().
2022-07-20 04:39:11 +05:30
Isira Seneviratne
55a995c4cd
Replace LinkedHashMap with List.of().
2022-07-20 04:39:11 +05:30
Isira Seneviratne
ca26fcb0eb
Use List.of().
2022-07-20 04:39:11 +05:30
Stypox
4eddd2c3d1
Fix random NullPointerException when adding video player view
2022-07-19 20:01:46 +02:00
Isira Seneviratne
c53143ef4f
Use Set.of().
2022-07-19 08:53:15 +05:30
Isira Seneviratne
e772244440
Update app/src/main/java/org/schabi/newpipe/fragments/detail/DescriptionFragment.java
...
Co-authored-by: Stypox <stypox@pm.me>
2022-07-19 05:13:38 +05:30
Stypox
e8669d4ab5
Deduplicate SQL queries to get feed streams
2022-07-18 23:39:57 +02:00
Stypox
cd14096dbe
Merge pull request #8633 from Isira-Seneviratne/Use_ViewCompat_setBackgroundTintList
...
Use ViewCompat.setBackgroundTintList().
2022-07-18 23:31:56 +02:00
Isira Seneviratne
f1de353b74
Use stream sorting.
2022-07-16 08:34:04 +05:30
Isira Seneviratne
5da8d5fc73
Use ViewCompat.setBackgroundTintList().
2022-07-16 05:49:52 +05:30
litetex
3ba04f179f
Fixed conflicts/build
2022-07-15 20:00:08 +02:00
litetex
3890d0abdb
Added note that explains that unused code was removed.
2022-07-15 19:55:19 +02:00
litetex
8b209df253
Changed the code accordingly
...
+ Removed some unused code
2022-07-15 19:55:19 +02:00
litetex
b7a44560f5
Merge pull request #8170 from Stypox/player-refactor
...
Refactor player and extract UI components
2022-07-15 19:41:23 +02:00
Stypox
0e8cc72b13
Fix random NullPointerException when adding video player view
2022-07-14 22:14:03 +02:00
Stypox
6ea85e6380
Rename dummy_* and more to placeholder_*
2022-07-14 14:27:33 +02:00
Stypox
7b9b9218dc
Remove bottom-sheet-thumbnail placeholder, clear the image instead
2022-07-14 14:14:33 +02:00
krlvm
35eeccd45a
Rename buddy.xml to dummy_person.xml
2022-07-14 14:14:32 +02:00
krlvm
cc7a8fb1a6
Improve image placeholders
...
- Show placeholders until the image is loaded because timeout can be very long and missing profile pictures and video thumbnails make app inconvenient to use
- Adapt profile picture and video thumbnail placeholders to light theme
- Replace profile picture and video thumbnail placeholders with vector graphics
2022-07-14 14:14:32 +02:00
TacoTheDank
c1e78cf55b
Update OkHttp to 4.x
2022-07-14 03:23:45 -04:00
Stypox
70e3c9805a
Merge pull request #8542 from carmebar/share-playlist
...
Add 'Share playlist' option to Playlist fragment
2022-07-13 23:45:08 +02:00
Stypox
8187a3bc04
Move PlayerType into its own class and add documentation
...
Also replace some `isPlayerOpen` with direct `playerType == null` checks.
2022-07-13 23:33:18 +02:00
Stypox
4443c908cb
Fix SonarLint java:S5320, restrict broadcasts to app package
2022-07-13 23:33:18 +02:00
Stypox
c03eac1dc9
Some SonarLint refactors
2022-07-13 23:33:18 +02:00
Stypox
61c1da144e
Some refactorings after review comments
2022-07-13 23:33:18 +02:00
Stypox
3692858a3d
Move popup layout param to PopupPlayerUi
2022-07-13 23:33:18 +02:00
Stypox
9c51fc3ade
Move functions to get Android dimen to ThemeHelper
2022-07-13 23:33:18 +02:00
Stypox
1cf746f721
Fix volume gestures not working anymore
2022-07-13 23:33:18 +02:00
Stypox
4979f84e41
Solve some Sonarlint warnings
2022-07-13 23:33:16 +02:00
Stypox
a19073ec01
Restore checkstyle and solve its errors
2022-07-13 23:32:27 +02:00
Stypox
1b39b5376f
Add some javadocs; move preparing player uis to PlayerUiList
2022-07-13 23:31:59 +02:00
Stypox
6559416bd8
Improve //region comments in player UIs
2022-07-13 23:30:30 +02:00
Stypox
fa25ecf521
Add comment about broadcast receiver
2022-07-13 23:27:24 +02:00
Stypox
6fb0256997
Remove unused PlayerServiceBinder
2022-07-13 23:27:24 +02:00
Stypox
8c26403e91
Remove unused PlayerState
2022-07-13 23:27:24 +02:00
Stypox
90a89f8ca5
Move player-notification files into their package
2022-07-13 23:27:24 +02:00
Stypox
0bba1d95de
Move all notification-related calls to NotificationPlayerUi
2022-07-13 23:27:24 +02:00
Stypox
b3f99645a3
Fix some crashes / issues after player refactor
2022-07-13 23:27:23 +02:00
Stypox
76ced59b62
Refactor player: separate UIs and more
2022-07-13 23:25:26 +02:00
TacoTheDank
189c92affa
More minSdk 21 cleanup
2022-07-13 19:03:47 +02:00
TacoTheDank
4ec9cbe379
Remove AndroidX Webkit
2022-07-13 19:03:47 +02:00
litetex
99104fc11d
Clean up pre-Lollipop checks
2022-07-13 19:02:24 +02:00
litetex
7cb137ae8d
Remove MultiDex
2022-07-13 19:02:24 +02:00
Alex
6f7298b9db
Crop the notification thumbnail in 1:1 mode instead of stretching it ( #8533 )
...
Change square bitmap transformation strategy: change the bitmap transformation strategy when a 1:1 aspect ratio is
enabled to not stretch the bitmap but rather crop it.
On Android 11/12, the way the whole thumbnail was used for the
notification icon was not ideal, however the setting to toggle a 1:1
(as it states in settings) resulted in distortions.
Fix this by simply cropping the bitmap.
Also update the 1:1 mode strings to remove mentions of scaling or
distortions, as those no longer apply.
2022-07-13 17:19:44 +02:00
Carlos Melero
d0b6d95f1b
Add Share option to local playlists
...
A newline-separated text is shared
2022-07-13 14:32:23 +02:00
Robin
93b913e14d
Merge pull request #8536 from TacoTheDank/bumpExoPlayer
...
Update ExoPlayer to 2.18.0
2022-07-13 12:59:12 +02:00
Stypox
b96c8a0c2f
Merge pull request #8545 from carmebar/hide-future-videos
...
Add option to hide future videos in feed
2022-07-13 11:07:38 +02:00
nikita.artikhovich
a4724fec4a
Add download option to long-press menu
2022-07-06 11:42:57 +02:00
litetex
155c6e94a3
Use correct `NonNull
`
2022-07-04 23:19:41 +02:00
litetex
4e285a4e70
Fix compile errors
2022-07-04 23:19:41 +02:00
TacoTheDank
00b9c082a3
Set setUsePlatformDiagnostics to false
2022-07-02 15:01:39 -04:00
Stypox
085d1e0d38
Actually fix wrong view count
2022-07-01 16:07:19 +02:00
TacoTheDank
1404581e9b
Update ExoPlayer to 2.18.0
2022-06-25 21:14:42 -04:00
Carlos Melero
f22417e7e7
Add option to hide future videos in feed
2022-06-24 18:03:48 +02:00
AudricV
cbd3308da6
Ensure that progressive contents are URL contents for playback
...
A ResolverException will be now thrown otherwise.
2022-06-19 15:41:29 +02:00
Stypox
4e87f5aabc
Remove misleading first "Non" from getNonUrlAndNonTorrentStreams
2022-06-18 18:52:32 +02:00
Stypox
2019af831a
Refactor PlaybackResolver and fix cacheKeyOf
...
In commonCacheKeyOf the result of an Objects.hash() was ignored
2022-06-18 18:41:44 +02:00
Stypox
1e076ea63d
Wrap debug log in if(DEBUG)
2022-06-18 18:09:12 +02:00
Stypox
4863084fa2
Improve code in VideoDetailFragment
2022-06-18 17:49:04 +02:00
Stypox
7ba79171c7
Refactor creation of DownloadDialog
2022-06-18 17:40:22 +02:00
AudricV
e3c2aea3cc
Fix playback of non-URI HLS streams
...
A custom HlsPlaylistParserFactory cannot be used anymore to play HLS streams.
This needs to be replaced by a custom HlsDataSourceFactory, which returns a ByteArrayDataSource (where the bytes of this DataSource correspond to the bytes of the playlist string) and a specified DataSource for other request types.
This model has two limitations:
- if media requests are relative, the URI from which the manifest comes from (either the manifest URI (preferred) or the master URI (if applicable)) must be returned, otherwise the content will be not playable, as it will be an invalid URL, or it may be treat as something unexpected, for instance as a file for DefaultDataSources;
- if the playlist is a master playlist, endless loops should be encountered because the DataSources created for media playlists will use the master playlist response instead of fetching the corresponding playlist. With the current model of HlsDataSourceFactory, there is no possibility to distinguish the playlist type or the URI that is requested.
If ExoPlayer provides a way to create HlsMediaSources with an HlsPlaylist in the future, it should be used instead of this solution.
2022-06-17 22:01:30 +02:00
AudricV
21c9530e8b
Throw a dedicated exception when errors occur in PlaybackResolver
...
A new exception, ResolverException, a subclass of PlaybackResolver, is now thrown when errors occur in PlaybackResolver, instead of an IOException
2022-06-17 22:01:29 +02:00
AudricV
036196a487
Filter streams using Java 8 Stream's API instead of removing streams with list iterators and add a better toast when there is no audio stream for external players
...
This ensures to not remove streams from the StreamInfo lists themselves, and so to not have to create list copies.
The toast shown in RouterActivity, when there is no audio stream available for external players, is now shown, in the same case, when pressing the background button in VideoDetailFragment.
2022-06-17 22:01:29 +02:00
AudricV
73855cacb7
Use StreamTypeUtil where possible and add isAudio and isVideo to this utility class
2022-06-17 22:01:26 +02:00
Stypox
8dad6d7e1c
Code improvements here and there
2022-06-17 22:00:53 +02:00
Stypox
e5ffa2aa09
Add comments to PlaybackResolver and remove useless @NonNull
2022-06-17 22:00:52 +02:00
Stypox
8445c381c5
Use DownloaderImpl.USER_AGENT directly
...
instead of passing it as a parameter
2022-06-17 22:00:52 +02:00