-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add play queue button to video details fragment #8946
Add play queue button to video details fragment #8946
Conversation
Here is the debug build. I will give it a try this week-end 🤩 |
Also, could this be squashed into one commit? |
I've made the changes from I'm not too sure about how to squash all these into a single commit, the only time I've done that before is with GitHub's GUI that says "Merge and squash" but I'll have a look on the weekend and see if I can figure it out, otherwise I can create a new branch, and apply these changes in a single commit and make a new PR |
It should be something like that: git reset --soft HEAD~5
git add .
git commit -m "Add play queue button to video details fragment"
git push -f |
ℹ️ I have try the build I have made during the week-end and found no way to make NewPipe crash anymore! 🥳 |
* Add play queue button to video details fragment * Use existing ic_list icon * Still open play queue even when queue is empty * Change app:srcCompat to android:src
083c7c3
to
9db0133
Compare
Thanks for the help, and for taking the time to review this, I've squashed it all into a single commit. |
Thanks for squashing! I have another nitpick, but at least it isn't the code lol. Could you update the screenshots so that it shows the current list icon (instead of the old one you put together)? |
Sorry about that, I just grabbed the old screenshots from the previous PR without thinking. I've updated them with fresh ones 🙂 |
Kudos, SonarCloud Quality Gate passed! |
@Stypox @TacoTheDank Is there something else to do with this PR before merging it? |
@M1CK431 Don't ping specific people like this. Just a comment is enough. Since there is an RC in the works, all such PRs are deferred to after release. |
@M1CK431 Merging will start up again once 0.24.0 is released :) |
Ok guys thanks, it's cristal clear! Sorry for the noise @opusforlife2 I was not aware it could be so annoying. Every project has it's own rules. Anyway, I will not do it again, I don't want to disturb anyone. So I will wait after v0.24 release and add a simple comment if there is reasons to think this PR merge is forgotten 😉 |
Generally, if the PR author has been recently active, it usually means that you don't need to worry about the PR. |
What is RC. Can you please explain? |
RC = Release Candidate. It's kind of "pre-version" which is intensively checked for bug or regression before official release. |
Mmmmm v0.24 was released 10+ days ago... 🙃 |
Oh no we must immediately merge this PR or the Hounds of Doom will be upon us. xD |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you!
That's awesome! 🎉 Thank you so much! 🙏 😍 I was waiting for that button from years, really! Now I will be able to use the full power of Newpipe, even without access to notifications, thanks to all of you. You can't imagine how I'm happy 🥳 Keep up the amazing work 💪 ❤️ 😘 |
Talking about empty queue crashes: hiding the queue button when the queue is empty is a good idea, though optimally the queue should work even when there is no player open. |
…lay queue is empty Related PR introducing the button: #8946
* Hide play queue button in VideoDetailsFragment mini player when the play queue is empty Related PR introducing the button: TeamNewPipe#8946 * Use GROUP_ALL_ID instead of hardcoded -1 * Fix duplicate videos in feed "All" * Update AppCompat to 1.5.1. * Use TextViewCompat.setCompoundDrawableTintList(). * Update PrettyTime from 5.0.3 to 5.0.6 to include new localizations * Use OnClickListener and OnLongClickListener lambdas in the player UIs. * Use lambdas for VideoDetailFragment listeners. * Add changelog for 0.24.1 (991) * [YouTube] Support opening handles from external apps * Update NewPipe Extractor to support handles * Translated using Weblate (Punjabi) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Turkish) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Punjabi (Pakistan)) Currently translated at 18.4% (119 of 646 strings) Translated using Weblate (Slovak) Currently translated at 9.7% (7 of 72 strings) Translated using Weblate (Azerbaijani) Currently translated at 97.2% (70 of 72 strings) Translated using Weblate (Polish) Currently translated at 59.7% (43 of 72 strings) Translated using Weblate (Ukrainian) Currently translated at 100.0% (72 of 72 strings) Translated using Weblate (Turkish) Currently translated at 99.8% (645 of 646 strings) Translated using Weblate (German) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Hungarian) Currently translated at 9.8% (7 of 71 strings) Translated using Weblate (Punjabi) Currently translated at 5.6% (4 of 71 strings) Translated using Weblate (Galician) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Punjabi) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Vietnamese) Currently translated at 99.6% (644 of 646 strings) Translated using Weblate (Portuguese) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Italian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Hungarian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Asturian) Currently translated at 2.8% (2 of 71 strings) Translated using Weblate (Punjabi) Currently translated at 99.6% (644 of 646 strings) Translated using Weblate (Vietnamese) Currently translated at 98.9% (639 of 646 strings) Translated using Weblate (Chinese (Traditional, Hong Kong)) Currently translated at 99.5% (643 of 646 strings) Translated using Weblate (Italian) Currently translated at 100.0% (646 of 646 strings) Added translation using Weblate (English (Middle)) Added translation using Weblate (English (Old)) Added translation using Weblate (Sicilian) Added translation using Weblate (Arabic (Najdi)) Added translation using Weblate (Kashmiri) Added translation using Weblate (German (Low)) Added translation using Weblate (Aymará) Added translation using Weblate (Kazakh) Translated using Weblate (Bulgarian) Currently translated at 2.8% (2 of 71 strings) Translated using Weblate (Bengali) Currently translated at 90.5% (585 of 646 strings) Translated using Weblate (Punjabi) Currently translated at 99.6% (644 of 646 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Lithuanian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (646 of 646 strings) Co-authored-by: Agnieszka C <aga_04@o2.pl> Co-authored-by: Balázs Meskó <meskobalazs@mailbox.org> Co-authored-by: Enol P <enolp@softastur.org> Co-authored-by: Ergün Can Taş <erguntas1968@gmail.com> Co-authored-by: Gediminas Murauskas <muziejusinfo@gmail.com> Co-authored-by: Giovanni Donisi <giovannidonisi0701@gmail.com> Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com> Co-authored-by: Lyudmil Borisov <lyuskoborisov@abv.bg> Co-authored-by: Marian Hanzel <marulinko@gmail.com> Co-authored-by: Nizami <nizamismidov4@gmail.com> Co-authored-by: Oğuz Ersen <oguz@ersen.moe> Co-authored-by: Ray <ray.cfu@protonmail.com> Co-authored-by: Rohan Deb Sarkar <rohandebsarkar+git@gmail.com> Co-authored-by: SC <lalocas@protonmail.com> Co-authored-by: ShareASmile <aapshergill@gmail.com> Co-authored-by: TXRdev Archive <lckphanaf9999@gmail.com> Co-authored-by: Thọ Bùi Nguyễn Hoàng <buitho061997@gmail.com> Co-authored-by: Vri 🌈 <weblate@vrifox.cc> Co-authored-by: Weblate <noreply@weblate.org> Co-authored-by: bgo-eiu <huyaqoob+toolforge@gmail.com> Co-authored-by: gallegonovato <fran-carro@hotmail.es> Co-authored-by: pjammo <adrianoghr@hotmail.it> Co-authored-by: zaioti <zaioti@tuta.io> Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/ast/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/az/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/bg/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/hu/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pa/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pl/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/sk/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/uk/ Translation: NewPipe/Metadata * Update NewPipe to 0.24.1 (991) * Fix inconsistent channel group list and item view mode * Fix wrongly calculated channel groups span count * Add helper methods for adding PendingIntent mutability. * Translated using Weblate (Odia) Currently translated at 6.1% (40 of 646 strings) Translated using Weblate (Santali) Currently translated at 10.3% (67 of 646 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 63.8% (46 of 72 strings) Translated using Weblate (Arabic) Currently translated at 50.0% (36 of 72 strings) Translated using Weblate (Italian) Currently translated at 100.0% (72 of 72 strings) Translated using Weblate (Portuguese) Currently translated at 69.4% (50 of 72 strings) Translated using Weblate (Bulgarian) Currently translated at 4.1% (3 of 72 strings) Translated using Weblate (Chinese (Traditional, Hong Kong)) Currently translated at 16.6% (12 of 72 strings) Translated using Weblate (Norwegian Bokmål) Currently translated at 92.2% (596 of 646 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Vietnamese) Currently translated at 99.6% (644 of 646 strings) Translated using Weblate (Swedish) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Arabic) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Romanian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Chinese (Traditional, Hong Kong)) Currently translated at 99.8% (645 of 646 strings) Translated using Weblate (Korean) Currently translated at 99.8% (645 of 646 strings) Translated using Weblate (Spanish) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Punjabi) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Turkish) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Punjabi (Pakistan)) Currently translated at 18.4% (119 of 646 strings) Translated using Weblate (Slovak) Currently translated at 9.7% (7 of 72 strings) Translated using Weblate (Azerbaijani) Currently translated at 97.2% (70 of 72 strings) Translated using Weblate (Polish) Currently translated at 59.7% (43 of 72 strings) Translated using Weblate (Ukrainian) Currently translated at 100.0% (72 of 72 strings) Translated using Weblate (Turkish) Currently translated at 99.8% (645 of 646 strings) Translated using Weblate (German) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Hungarian) Currently translated at 9.8% (7 of 71 strings) Translated using Weblate (Punjabi) Currently translated at 5.6% (4 of 71 strings) Translated using Weblate (Galician) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Punjabi) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Vietnamese) Currently translated at 99.6% (644 of 646 strings) Translated using Weblate (Portuguese) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Italian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Hungarian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Asturian) Currently translated at 2.8% (2 of 71 strings) Translated using Weblate (Punjabi) Currently translated at 99.6% (644 of 646 strings) Translated using Weblate (Vietnamese) Currently translated at 98.9% (639 of 646 strings) Translated using Weblate (Chinese (Traditional, Hong Kong)) Currently translated at 99.5% (643 of 646 strings) Translated using Weblate (Italian) Currently translated at 100.0% (646 of 646 strings) Added translation using Weblate (English (Middle)) Added translation using Weblate (English (Old)) Added translation using Weblate (Sicilian) Added translation using Weblate (Arabic (Najdi)) Added translation using Weblate (Kashmiri) Added translation using Weblate (German (Low)) Added translation using Weblate (Aymará) Added translation using Weblate (Kazakh) Translated using Weblate (Bulgarian) Currently translated at 2.8% (2 of 71 strings) Translated using Weblate (Bengali) Currently translated at 90.5% (585 of 646 strings) Translated using Weblate (Punjabi) Currently translated at 99.6% (644 of 646 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Lithuanian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (646 of 646 strings) Co-authored-by: Agnieszka C <aga_04@o2.pl> Co-authored-by: Alex25820 <alexs25820@gmail.com> Co-authored-by: Balázs Meskó <meskobalazs@mailbox.org> Co-authored-by: Enol P <enolp@softastur.org> Co-authored-by: Ergün Can Taş <erguntas1968@gmail.com> Co-authored-by: GET100PERCENT <eraofphysics@yahoo.com> Co-authored-by: Gediminas Murauskas <muziejusinfo@gmail.com> Co-authored-by: Giovanni Donisi <giovannidonisi0701@gmail.com> Co-authored-by: Hoseok Seo <ddinghoya@gmail.com> Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com> Co-authored-by: L-M-H <lars.magnus@herland.priv.no> Co-authored-by: Lyudmil Borisov <lyuskoborisov@abv.bg> Co-authored-by: Marian Hanzel <marulinko@gmail.com> Co-authored-by: Massimo Pissarello <mapi68@gmail.com> Co-authored-by: Nizami <nizamismidov4@gmail.com> Co-authored-by: Oğuz Ersen <oguz@ersen.moe> Co-authored-by: Prasanta-Hembram <Prasantahembram720@gmail.com> Co-authored-by: Preston Waters <masatox3@yahoo.com> Co-authored-by: Ray <ray.cfu@protonmail.com> Co-authored-by: Rohan Deb Sarkar <rohandebsarkar+git@gmail.com> Co-authored-by: SC <lalocas@protonmail.com> Co-authored-by: Sebi <stoican_sebi@yahoo.com> Co-authored-by: ShareASmile <aapshergill@gmail.com> Co-authored-by: TXRdev Archive <lckphanaf9999@gmail.com> Co-authored-by: Thọ Bùi Nguyễn Hoàng <buitho061997@gmail.com> Co-authored-by: Vri 🌈 <weblate@vrifox.cc> Co-authored-by: Weblate <noreply@weblate.org> Co-authored-by: bgo-eiu <huyaqoob+toolforge@gmail.com> Co-authored-by: gallegonovato <fran-carro@hotmail.es> Co-authored-by: pjammo <adrianoghr@hotmail.it> Co-authored-by: thami simo <simo.azad@gmail.com> Co-authored-by: zaioti <zaioti@tuta.io> Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/ar/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/ast/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/az/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/bg/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/hu/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/it/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pa/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pl/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pt/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/sk/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/uk/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/zh_Hant/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/zh_Hant_HK/ Translation: NewPipe/Metadata * Remove the redundant/overlapping toast "Copied to clipboard" for Android 13+ Signed-off-by: dhruv <dhruvpatidar35@gmail.com> Co-authored-by: Tobi <TobiGr@users.noreply.github.com> Co-authored-by: AudricV <74829229+AudricV@users.noreply.github.com> * Remove Utility.copyToClipboard and use ShareUtils.copyToClipboard instead This method is not needed anymore, as ShareUtils.copyToClipboard does almost the same thing (no label is set on the ClipData used to copy text, contrary to what Utility did, but using "text" as a ClipData label doesn't seem useful). It was used in MissionAdapter.handlePopupItem to copy the SHA1 or the MD5 of a file. * Use Locale.forLanguageTag(). * Group private Localization methods together. * Use Math.floorDiv(). * Fix persistent hover overlay when mouse connected * Fix DeX mode check * Address review comments * Fix JSDoc checkstyle warning * Add JSDoc comment and a performance note for `isDesktopMode` * Add check for input devices with cursor. * Remove errant return. * Remove now obsolete API check. * Improve code of DeviceUtils.isDesktopMode - Avoid NullPointerException crashes if there is no UiModeManager or desktop system service mode - Use final for every exception - Suppress missing fields warnings - Add missing NonNull annotation * Translated using Weblate (Punjabi) Currently translated at 100.0% (646 of 646 strings) * Translated using Weblate (Czech) Currently translated at 100.0% (72 of 72 strings) Translation: NewPipe/Metadata Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/cs/ * Translated using Weblate (Italian) Currently translated at 100.0% (72 of 72 strings) Translation: NewPipe/Metadata Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/it/ * Translated using Weblate (Latvian) Currently translated at 4.1% (3 of 72 strings) Translation: NewPipe/Metadata Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/lv/ * Translated using Weblate (Latvian) Currently translated at 92.5% (598 of 646 strings) * Set compileSdk and targetSdk to 33 (Android 13) android:exported in now required in the manifest on all activities/services/receivers/providers. It was set to true for those that need to interact with outside apps or the OS, while others have exported=false. This also required updating LeakCanary to the latest version as the older version being used was not using android:exported in AndroidManifest.xml. * Use SparseArrayCompat for thumbnails. * Use SparseArrayCompat instead of SparseArray in StreamItemAdapter. Make additional small improvements as well. * Seeking no longer pauses the played video * Set image-minimizer to specify image width ... Fix TeamNewPipe#9469 for portrait like orientations * Fix value of width * Resolve scoping issue to get values of probeResult * Minimize not-so-long images too * checkstyle: declare org.jetbrains and javax.annotation Nullable's and NotNull/Nonnull as illegal imports * Block rxjava3 nullable/nonnull imports in checkstyle * Add notifications permission * Request permission to send notifications * Make miniplayer close button area larger * Use BitmapCompat.createScaledBitmap(). * Update Sonarqube to 3.5 * Disabling night theme selection if auto theme is not used * Update Desugaring to 1.1.8 * Translated using Weblate (Norwegian Bokmål) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Hindi) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Korean) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (French) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Norwegian Nynorsk) Currently translated at 9.1% (59 of 646 strings) Translated using Weblate (Punjabi (Pakistan)) Currently translated at 19.6% (127 of 646 strings) Translated using Weblate (Norwegian Bokmål) Currently translated at 99.0% (640 of 646 strings) Translated using Weblate (Arabic (Libya)) Currently translated at 5.5% (4 of 72 strings) Translated using Weblate (Hindi) Currently translated at 18.0% (13 of 72 strings) Translated using Weblate (Hungarian) Currently translated at 11.1% (8 of 72 strings) Translated using Weblate (Portuguese) Currently translated at 69.4% (50 of 72 strings) Translated using Weblate (Filipino) Currently translated at 5.5% (4 of 72 strings) Translated using Weblate (Filipino) Currently translated at 35.9% (232 of 646 strings) Translated using Weblate (Catalan) Currently translated at 95.9% (620 of 646 strings) Translated using Weblate (Hindi) Currently translated at 78.7% (509 of 646 strings) Translated using Weblate (Turkish) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Chinese (Traditional, Hong Kong)) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Portuguese (Portugal)) Currently translated at 69.4% (50 of 72 strings) Translated using Weblate (Spanish) Currently translated at 100.0% (72 of 72 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Odia) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Persian) Currently translated at 61.1% (44 of 72 strings) Translated using Weblate (Russian) Currently translated at 41.6% (30 of 72 strings) Translated using Weblate (Persian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Norwegian Nynorsk) Currently translated at 6.1% (40 of 646 strings) Translated using Weblate (Odia) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Odia) Currently translated at 2.7% (2 of 72 strings) Translated using Weblate (Lithuanian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (French) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Odia) Currently translated at 30.1% (195 of 646 strings) Translated using Weblate (Russian) Currently translated at 41.6% (30 of 72 strings) Translated using Weblate (Norwegian Bokmål) Currently translated at 92.2% (596 of 646 strings) Translated using Weblate (Hindi) Currently translated at 69.6% (450 of 646 strings) Added translation using Weblate (Norwegian Nynorsk) Translated using Weblate (Georgian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Ukrainian) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Icelandic) Currently translated at 99.0% (640 of 646 strings) Translated using Weblate (Punjabi) Currently translated at 6.9% (5 of 72 strings) Translated using Weblate (German) Currently translated at 62.5% (45 of 72 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (646 of 646 strings) Translated using Weblate (Georgian) Currently translated at 20.1% (130 of 646 strings) Translated using Weblate (Georgian) Currently translated at 98.6% (71 of 72 strings) Added translation using Weblate (Georgian) Co-authored-by: AudricV <avdivers84@gmail.com> Co-authored-by: Boros Zsombor <zsombor2626@gmail.com> Co-authored-by: Cyndaquissshhh <iversonbriones123@gmail.com> Co-authored-by: Emin Tufan Çetin <etcetin@gmail.com> Co-authored-by: GET100PERCENT <eraofphysics@yahoo.com> Co-authored-by: Gediminas Murauskas <muziejusinfo@gmail.com> Co-authored-by: Hoseok Seo <ddinghoya@gmail.com> Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com> Co-authored-by: JY3 <GeeyunJY3@gmail.com> Co-authored-by: L-M-H <lars.magnus@herland.priv.no> Co-authored-by: M. Ll <mklr95@gmail.com> Co-authored-by: M4SK <themightyloki@free.fr> Co-authored-by: Nahla Hamdi <nahlahamdi87@gmail.com> Co-authored-by: Net <nizamismidov4@gmail.com> Co-authored-by: Nikoloz <nukushatugushi@gmail.com> Co-authored-by: Pedro Henrique Vilela do Nascimento <pedro.hvn@usp.br> Co-authored-by: Platon Terekhov <gibbonsville_cowal@simplelogin.com> Co-authored-by: Ray <ray.cfu@protonmail.com> Co-authored-by: ShareASmile <aapshergill@gmail.com> Co-authored-by: Trendyne <eiko@chiru.no> Co-authored-by: VfBFan <drop0815@posteo.de> Co-authored-by: Weblate <noreply@weblate.org> Co-authored-by: bgo-eiu <huyaqoob+toolforge@gmail.com> Co-authored-by: gallegonovato <fran-carro@hotmail.es> Co-authored-by: qqqq1 <qqqq1@hi2.in> Co-authored-by: ssantos <ssantos@web.de> Co-authored-by: tryvseu <tryvseu@tuta.io> Co-authored-by: Артём Нефедов <artem10397g@gmail.com> Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/ar_LY/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/de/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/es/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/fa/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/fil/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/hi/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/hu/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/ka/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/or/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pa/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pt/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pt_PT/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/ru/ Translation: NewPipe/Metadata * Show toast when no updates are available. Co-authored-by: Stypox <stypox@pm.me> * Apply ktlint formatting. * rename help to fast mode * Only show "Enqueue next" when in the middle of the queue Add a check that the queue position is not the last in the queue before showing "Enqueue next". Previously the "Enqueue next" action would always be shown if the queue length was greater than one, this meant even if you were at the end of the queue (when "Enqueue" would have the same effect as "Enqueue next") the action would still be shown. * Rename list_empty_subtitle string * Show hint about how to import subscriptions when there are none * Center text in empty views * Added option to download items in the queue * show subscriber count on player page * Make subscribers in video detail fragment dimmer * Remove dead Privacy Tools instance (TeamNewPipe#9504) * Implemented suggestions * Translated using Weblate (Spanish) Currently translated at 100.0% (72 of 72 strings) Translated using Weblate (Persian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Esperanto) Currently translated at 74.3% (482 of 648 strings) Translated using Weblate (German) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Punjabi) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Hindi) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Lithuanian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Swedish) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Russian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (French) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (German) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (German) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Odia) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Galician) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Estonian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Portuguese) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Spanish) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Punjabi) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Hindi) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Hebrew) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Chinese (Traditional)) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Chinese (Simplified)) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Polish) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Turkish) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Ukrainian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Indonesian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Arabic) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Czech) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Italian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (German) Currently translated at 99.8% (647 of 648 strings) Translated using Weblate (Greek) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Greek) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Greek) Currently translated at 99.6% (646 of 648 strings) Co-authored-by: Agnieszka C <aga_04@o2.pl> Co-authored-by: BMN <weblate@yopmail.com> Co-authored-by: C. Rüdinger <Mail-an-CR@web.de> Co-authored-by: Danial Behzadi <dani.behzi@ubuntu.com> Co-authored-by: Eric <hamburger1024@duck.com> Co-authored-by: Fjuro <ifjuro@proton.me> Co-authored-by: Florian <flo.site@zaclys.net> Co-authored-by: GET100PERCENT <eraofphysics@yahoo.com> Co-authored-by: Gediminas Murauskas <muziejusinfo@gmail.com> Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: Igor Nedoboy <i.nedoboy@mail.ru> Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com> Co-authored-by: Jeff Huang <s8321414@gmail.com> Co-authored-by: Linerly <linerly@protonmail.com> Co-authored-by: Nidi <nizamismidov4@gmail.com> Co-authored-by: Oğuz Ersen <oguz@ersen.moe> Co-authored-by: Priit Jõerüüt <hwlate@joeruut.com> Co-authored-by: Retrial <giwrgosmant@gmail.com> Co-authored-by: Rex_sa <rex.sa@pm.me> Co-authored-by: Ricardo <contatorms7@tutamail.com> Co-authored-by: SC <lalocas@protonmail.com> Co-authored-by: ShareASmile <aapshergill@gmail.com> Co-authored-by: Skarvinius <saab_samuel@hotmail.com> Co-authored-by: Vasilis K <skyhirules@gmail.com> Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com> Co-authored-by: argonfilm <gradicchuck@gmail.com> Co-authored-by: gallegonovato <fran-carro@hotmail.es> Co-authored-by: nautilusx <translate@disroot.org> Co-authored-by: pjammo <adrianoghr@hotmail.it> Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/es/ Translation: NewPipe/Metadata * Update RxJava to 3.1.5. * Fixes TeamNewPipe#9518 - Crash fix on clicking on add to playlist. - Added toast when clicked on share button for better UI. * Delete translation without default: app_update_notification_content_text * Delete translation without default: app_update_notification_content_text * Delete translation without default: app_update_notification_content_title * Delete translation without default: progressive_load_interval_default * Removed the wasPlaying variable * Update ExoPlayer to 2.18.2 * added icon for play all * Support audio only background for services only supporting video streams Some services may only have video streams and no separate audio streams available. This commit will add audio background playback support for those services. It uses the video source as audio source for background playback. * Translated using Weblate (French) Currently translated at 93.0% (67 of 72 strings) Translated using Weblate (Ukrainian) Currently translated at 100.0% (72 of 72 strings) Translated using Weblate (Ukrainian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (French) Currently translated at 91.6% (66 of 72 strings) Translated using Weblate (Urdu) Currently translated at 66.9% (434 of 648 strings) Translated using Weblate (Hungarian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Portuguese (Portugal)) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Punjabi) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Azerbaijani) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Hindi) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Romanian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Italian) Currently translated at 100.0% (72 of 72 strings) Translated using Weblate (Telugu) Currently translated at 6.9% (5 of 72 strings) Translated using Weblate (Telugu) Currently translated at 66.9% (434 of 648 strings) Translated using Weblate (Russian) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Dutch) Currently translated at 100.0% (648 of 648 strings) Translated using Weblate (Tamil) Currently translated at 54.0% (350 of 648 strings) Translated using Weblate (Chinese (Traditional, Hong Kong)) Currently translated at 100.0% (648 of 648 strings) Co-authored-by: Ahmad Raza <ahmadrazaxm@gmail.com> Co-authored-by: Dan <denqwerta@gmail.com> Co-authored-by: Florian <flo.site@zaclys.net> Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: Igor Nedoboy <i.nedoboy@mail.ru> Co-authored-by: Igor Sorocean <sorocean.igor@gmail.com> Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com> Co-authored-by: Kiss Attila <gaxeco4855@pro5g.com> Co-authored-by: Nidi <nizamismidov4@gmail.com> Co-authored-by: Ray <ray.cfu@protonmail.com> Co-authored-by: ShareASmile <aapshergill@gmail.com> Co-authored-by: Terry Louwers <t.louwers@gmail.com> Co-authored-by: Translator <kvb@tuta.io> Co-authored-by: pjammo <adrianoghr@hotmail.it> Co-authored-by: ssantos <ssantos@web.de> Co-authored-by: subba raidu <raidu4u@gmail.com> Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/fr/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/it/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/te/ Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/uk/ Translation: NewPipe/Metadata * Add Nynorsk (nn) to the language chooser * Use ListAdapter in NotificationModeConfigAdapter. * Refactor constrolsTouchListener code * Activate on click listeners only when not loading For consistency with long click listeners, in VideoDetailFragment * Use correct fragment manager for download dialog Tapping download on the long-press menu of queue items when the queue is shown inside the player would crash otherwise * Remove playlist details toasts * Update rxandroid from 3.0.0 to 3.0.2 * set 'playback in background button' visible if there are videostreams * Use new NewPipe Extractor Utils methods. * Simplify disposables handling in notification mode settings * Use Cronet for playback, replace YouTube custom DataSource by a Resolver and increase network socket timeouts Use the Cronet network stack for playback using ExoPlayer's Cronet extension, instead of using Android's native network stack provided by HttpUrlConnection, which is Android device and OS version specific: this means that this network stack can be easily outdated and can contain some issues that are not present on Cronet or OkHttp. While OkHttp could be used as a network stack of ExoPlayer, it has been noticed when testing the usage of the OkHttp extension for playback that throttling issues with playback of YouTube contents may happen. That's the reason why Cronet is used instead, on which the issue does not happen, according to tests. The addition of this network library, embedded into the application, increases unfortunately the application size by around 10MB, because the Cronet library contains native code, shipped for all CPU architectures supported by Android's NDK (arm64-v8a, armeabi-v7a, x86 and x86_64). This doubles the release application size, due to the fact that the application is universal and not architecture dependant. QUIC is disabled on the Cronet engine, lazy-loaded (created only when the player is opened for the first time), in order to prevent sending to services the QUIC User-Agent ID which contains the application ID and version. This User-Agent ID is not editable by clients, but can be changed by using a custom Cronet implementation based on a custom cronet-common module, or by removing the original class responsible of generating the User-Agent ID and providing a custom implementation instead. As YoutubeHttpDataSource was a copy of ExoPlayer's DefaultHttpDataSource, based on Android's network stack, which is now unused, it has been removed and the modifications made for YouTube playback on streaming URLs are now made using a ResolvingDataSource Resolver, YoutubeDataSourceResolver. A workaround is used in it to prevent ExoPlayer sending the Range HTTP header. If usage of the range query parameter/path parameter is enabled and that it doesn't already exist as a URL parameter, this header is converted into a range query parameter or "path parameter". This may break playback if YouTube is serving streaming data with compression, which is unlikely to happen as it is inefficient, and that Cronet doesn't allow editing the `Accept-Encoding` HTTP header (see https://groups.google.com/a/chromium.org/g/net-dev/c/VbWPhyGrxD4/m/VC71PP3DAQAJ for details about how Cronet handles content encoding). This resolver adds support of YouTube videoplayback URLs using "path parameters" instead of query parameters. For example, https://YOUTUBE_VIDEO_HOST.com/videoplayback/PARAM_1/VALUE_1/PARAM_2/VALUE_2 is using "path parameters", when https://YOUTUBE_VIDEO_HOST.com/videoplayback?PARAM_1=VALUE_1&PARAM_2=VALUE_2 query parameters. "Path parameters" are used for streaming URLs of DASH and HLS manifests. This Resolver is compatible with multiple network stacks and is easier to maintain than the previous approach. Timeouts of network sockets connect and write operations have been increased from the default values (10 seconds) to 30 seconds. It is now also the case for playback, while this value where has been set where it was possible (connect and read operations, their default value is 8 seconds in ExoPlayer). * Add custom UserAgent class to allow using QUIC This class changes the QUIC User-Agent ID generated by Cronet, by removing the application name to allow usage of QUIC. The original class must be removed when building the app, in order to avoid duplicate classes which would break release builds or use the original class on debug builds. * Remove UserAgent from cronet-common via Gradle tasks Co-authored-by: AudricV <74829229+AudricV@users.noreply.github.com> * Enable QUIC and Brotli support for playback Also make sure that HTTP/2 is enabled, even if this should already be the case by default (same behavior for QUIC). * Remove any reference to user data in cronet's UserAgent --------- Co-authored-by: TobiGr <tobigr@users.noreply.github.com> Co-authored-by: Stypox <stypox@pm.me> Co-authored-by: Isira Seneviratne <isirasen96@gmail.com> Co-authored-by: Isira Seneviratne <31027858+Isira-Seneviratne@users.noreply.github.com> Co-authored-by: AudricV <74829229+AudricV@users.noreply.github.com> Co-authored-by: Hosted Weblate <hosted@weblate.org> Co-authored-by: Agnieszka C <aga_04@o2.pl> Co-authored-by: Balázs Meskó <meskobalazs@mailbox.org> Co-authored-by: Enol P <enolp@softastur.org> Co-authored-by: Ergün Can Taş <erguntas1968@gmail.com> Co-authored-by: Gediminas Murauskas <muziejusinfo@gmail.com> Co-authored-by: Giovanni Donisi <giovannidonisi0701@gmail.com> Co-authored-by: Ihor Hordiichuk <igor_ck@outlook.com> Co-authored-by: Lyudmil Borisov <lyuskoborisov@abv.bg> Co-authored-by: Marian Hanzel <marulinko@gmail.com> Co-authored-by: Nizami <nizamismidov4@gmail.com> Co-authored-by: Oğuz Ersen <oguz@ersen.moe> Co-authored-by: Ray <ray.cfu@protonmail.com> Co-authored-by: Rohan Deb Sarkar <rohandebsarkar+git@gmail.com> Co-authored-by: SC <lalocas@protonmail.com> Co-authored-by: TXRdev Archive <lckphanaf9999@gmail.com> Co-authored-by: Thọ Bùi Nguyễn Hoàng <buitho061997@gmail.com> Co-authored-by: Vri 🌈 <weblate@vrifox.cc> Co-authored-by: Weblate <noreply@weblate.org> Co-authored-by: bgo-eiu <huyaqoob+toolforge@gmail.com> Co-authored-by: gallegonovato <fran-carro@hotmail.es> Co-authored-by: pjammo <adrianoghr@hotmail.it> Co-authored-by: zaioti <zaioti@tuta.io> Co-authored-by: Alex25820 <alexs25820@gmail.com> Co-authored-by: GET100PERCENT <eraofphysics@yahoo.com> Co-authored-by: Hoseok Seo <ddinghoya@gmail.com> Co-authored-by: L-M-H <lars.magnus@herland.priv.no> Co-authored-by: Massimo Pissarello <mapi68@gmail.com> Co-authored-by: Prasanta-Hembram <Prasantahembram720@gmail.com> Co-authored-by: Preston Waters <masatox3@yahoo.com> Co-authored-by: Sebi <stoican_sebi@yahoo.com> Co-authored-by: thami simo <simo.azad@gmail.com> Co-authored-by: dhruvpatidar359 <dhruvpatidar35@gmail.com> Co-authored-by: Hanif Shersy <hanif.shersy@slyp.com.au> Co-authored-by: cybersphinx <chr.ohm@gmx.net> Co-authored-by: Fjuro <ifjuro@proton.me> Co-authored-by: Coool (github.com/Coool) <coool@mail.lv> Co-authored-by: Jared Fantaye <Jared@fantaye.de> Co-authored-by: yashpalgoyal1304 <yashpalgoyal1304@gmail.com> Co-authored-by: evermind <evermind@tuxfamily.org> Co-authored-by: TacoTheDank <SkytkRSfan3895@gmail.com> Co-authored-by: AudricV <avdivers84@gmail.com> Co-authored-by: Boros Zsombor <zsombor2626@gmail.com> Co-authored-by: Cyndaquissshhh <iversonbriones123@gmail.com> Co-authored-by: Emin Tufan Çetin <etcetin@gmail.com> Co-authored-by: JY3 <GeeyunJY3@gmail.com> Co-authored-by: M. Ll <mklr95@gmail.com> Co-authored-by: M4SK <themightyloki@free.fr> Co-authored-by: Nahla Hamdi <nahlahamdi87@gmail.com> Co-authored-by: Nikoloz <nukushatugushi@gmail.com> Co-authored-by: Pedro Henrique Vilela do Nascimento <pedro.hvn@usp.br> Co-authored-by: Platon Terekhov <gibbonsville_cowal@simplelogin.com> Co-authored-by: Trendyne <eiko@chiru.no> Co-authored-by: VfBFan <drop0815@posteo.de> Co-authored-by: qqqq1 <qqqq1@hi2.in> Co-authored-by: ssantos <ssantos@web.de> Co-authored-by: tryvseu <tryvseu@tuta.io> Co-authored-by: Артём Нефедов <artem10397g@gmail.com> Co-authored-by: pratyaksh1610 <pratyakshkhuranaofficial@gmail.com> Co-authored-by: Douile <25043847+Douile@users.noreply.github.com> Co-authored-by: ThetaDev <t.testboy@gmail.com> Co-authored-by: Daniel Gray <dng@disroot.org> Co-authored-by: BMN <weblate@yopmail.com> Co-authored-by: C. Rüdinger <Mail-an-CR@web.de> Co-authored-by: Danial Behzadi <dani.behzi@ubuntu.com> Co-authored-by: Eric <hamburger1024@duck.com> Co-authored-by: Florian <flo.site@zaclys.net> Co-authored-by: Igor Nedoboy <i.nedoboy@mail.ru> Co-authored-by: Jeff Huang <s8321414@gmail.com> Co-authored-by: Linerly <linerly@protonmail.com> Co-authored-by: Priit Jõerüüt <hwlate@joeruut.com> Co-authored-by: Retrial <giwrgosmant@gmail.com> Co-authored-by: Rex_sa <rex.sa@pm.me> Co-authored-by: Ricardo <contatorms7@tutamail.com> Co-authored-by: Skarvinius <saab_samuel@hotmail.com> Co-authored-by: Vasilis K <skyhirules@gmail.com> Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com> Co-authored-by: argonfilm <gradicchuck@gmail.com> Co-authored-by: nautilusx <translate@disroot.org> Co-authored-by: Robin <robin.gawenda@ondamedia.de> Co-authored-by: Ahmad Raza <ahmadrazaxm@gmail.com> Co-authored-by: Dan <denqwerta@gmail.com> Co-authored-by: Igor Sorocean <sorocean.igor@gmail.com> Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com> Co-authored-by: Kiss Attila <gaxeco4855@pro5g.com> Co-authored-by: Terry Louwers <t.louwers@gmail.com> Co-authored-by: Translator <kvb@tuta.io> Co-authored-by: subba raidu <raidu4u@gmail.com> Co-authored-by: Robin <redirion@web.de>
This PR adds a play queue button to the video fragment. For more details and some history please see the previous PR
What is it?
Description of the changes in your PR
Before/After Screenshots/Screen Record
Fixes the following issue(s)
As mentioned in the previous PR, this might help address #2477, #5235 and #7208 although not exactly what they are looking for.
APK testing
The APK can be found by going to the "Checks" tab below the title. On the left pane, click on "CI", scroll down to "artifacts" and click "app" to download the zip file which contains the debug APK of this PR.
Due diligence