Commit graph

3796 commits

Author SHA1 Message Date
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
ThetaDev
7a99f4910d fix: NPE in ChannelFragment::onSaveInstanceState 2023-09-18 23:22:32 +02:00
ThetaDev
59426378f1 refactor: rename ChannelInfo to ChannelAbout
fix: localize about tab name
2023-09-18 23:22:32 +02:00
ThetaDev
397234a40f cleanup: remove empty constructor from ChannelFragment 2023-09-18 23:22:31 +02:00
ThetaDev
13496f4533 refactor: common code from ChannelInfo/Description -> BaseInfoFragment 2023-09-18 23:22:31 +02:00
ThetaDev
773a6a8c7e fix: channel tab title not being set 2023-09-18 23:22:31 +02:00
ThetaDev
72968fbefe fix: ChannelFragment: save last tab 2023-09-18 23:22:31 +02:00
ThetaDev
cd797a6bef refactor: adjustments to updated tab extractor API 2023-09-18 23:22:31 +02:00
ThetaDev
ca9102dd4c fix: cache channel data 2023-09-18 23:22:31 +02:00
ThetaDev
bfce26fddc fix: missing album tab key 2023-09-18 23:22:31 +02:00
ThetaDev
bf81bca9fd feat: add album tab 2023-09-18 23:22:31 +02:00
ThetaDev
5ce45cd4f2 fix: remember selected channel tab on screen rotation 2023-09-18 23:22:31 +02:00
ThetaDev
1b0528870a feat: add option to hide channel tabs 2023-09-18 23:22:31 +02:00
ThetaDev
5d3bf427a3 feat: prettier channel info page 2023-09-18 23:22:31 +02:00
ThetaDev
c32feb3624 fix: handle unsupported content 2023-09-18 23:22:31 +02:00
ThetaDev
4e6b72dc8e fix: get notified menu option on all tabs 2023-09-18 23:22:31 +02:00
ThetaDev
11f83b8e24 feat: add channel tabs 2023-09-18 23:22:31 +02:00
Rishab Aggarwal
04b7fe4939 Improved downloading experience (#10407)
* added LoadingDialog for improving download experience

* [LoadingDialog] Apply some review comments and make title customizable.

* removed permission handling from loading Dialog

* fix checks

* remove <p> Tag from first sentence

---------

Co-authored-by: rishabaggarwal <Rishabaggarwal@sharechat.com>
Co-authored-by: TobiGr <tobigr@users.noreply.github.com>
2023-09-18 05:24:03 +05:30
TobiGr
fd19e8e9f7 Replace RuntimeException with IOException
The RuntimeException was not explicitly declared and thus not caught at every call of this constructor. This change ensures that this possible exception is handled by the dedicated error handlers.
2023-09-17 15:31:19 +02:00
TobiGr
0f42c58409 Small code and doc improvements
Remove unnecessary else-branch and use Collections.isEmpty().
Add doc comment for splitFilename()
2023-09-17 15:31:19 +02:00
Isira Seneviratne
adb597f1ca Use Path in the download helper classes. 2023-09-17 14:50:26 +02:00
AudricV
9ef0b6265a Show play queue button in main player when there is one stream 2023-08-30 19:45:53 +02:00
TobiGr
ee90cf4126 Fix grammar in JDoc 2023-08-22 16:23:22 +02:00
TobiGr
17ccb1e95b Simplify MainActivity.tabSelected(MenuItem)
Rename variables and skip iterations if kiosk was found.
2023-08-19 21:58:44 +02:00
TobiGr
387a42316a Fix some sonar warnings and make some smaller improvements 2023-08-14 23:09:50 +02:00
Stypox
e2bb7b42e8 Update app/src/main/java/org/schabi/newpipe/fragments/list/BaseListInfoFragment.java 2023-08-06 10:07:13 +02:00
TobiGr
2839babfb3 Adjust empty state message for ListInfoFragments depending on Info stream type
Show "no streams" for SoundClound.
Show "no live streams" for MeidaCCCLiveStreamKiosk.
Otherwise show "no videos"
2023-08-05 03:50:28 +02:00
TobiGr
d1026176bd Fixed some Sonar warnings 2023-08-03 12:02:08 +02:00
J-Stutzmann
f624228500 Made audio-focus calls respect mute state. 2023-08-02 23:44:23 -04:00
TobiGr
ad8d153808 Ignore false positive inspection 2023-08-02 20:44:30 +02:00
TobiGr
6fe07cd708 Replace settings migration with automatic check for device blacklist version 2023-07-31 23:00:54 +02:00
TobiGr
33c1693720 Disable media tunneling by default on new devices
Sony BRAVIA_VH1, BRAVIA_VH2, BRAVIA_ATV2, BRAVIA_ATV3_4K
Phillips 4K (O)LED TV (PH7M_EU_5596)
Panasonic 4KTV-JUP (TX_50JXW834)
Bouygtel4K (HMB9213NW)
2023-07-29 22:08:51 +02:00
TobiGr
829b36a9cd Ensure that imports handle disabling media tunneling correctly
Store in preferences whether media tunneling was disabled automatically.
Show info in ExoPlayer settings if media tunneling was disabled autmatically.
2023-07-29 22:08:51 +02:00