Call `saveImmediate` only after used actually dropped item instead
of every time View is updated which happens several times to show
user a feedback where item would be moved
This fixes the following error during the minifyWithR8 task:
> Task :app:minifyReleaseWithR8 FAILED
ERROR: Missing classes detected while running R8. Please add the missing classes or apply additional keep rules that are generated in /home/runner/work/NewPipe/NewPipe/app/build/outputs/mapping/release/missing_rules.txt.
ERROR: R8: Missing class com.google.re2j.Matcher (referenced from: com.google.re2j.Matcher org.jsoup.helper.Re2jRegex$Re2jMatcher.delegate and 3 other contexts)
Missing class com.google.re2j.Pattern (referenced from: com.google.re2j.Pattern org.jsoup.helper.Re2jRegex.re2jPattern and 4 other contexts)
Currently translated at 56.3% (49 of 87 strings)
Translated using Weblate (French)
Currently translated at 77.0% (67 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (764 of 764 strings)
Co-authored-by: Agnieszka C <aga_04@o2.pl>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mickaël Binos <mickaelbinos@outlook.com>
Co-authored-by: whistlingwoods <72640314+whistlingwoods@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/fr/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pl/
Translation: NewPipe/Metadata
Currently translated at 56.3% (49 of 87 strings)
Translated using Weblate (French)
Currently translated at 77.0% (67 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (764 of 764 strings)
Co-authored-by: Agnieszka C <aga_04@o2.pl>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Mickaël Binos <mickaelbinos@outlook.com>
Co-authored-by: whistlingwoods <72640314+whistlingwoods@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/fr/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pl/
Translation: NewPipe/Metadata
Currently translated at 39.2% (300 of 764 strings)
Translated using Weblate (Lombard)
Currently translated at 0.3% (3 of 764 strings)
Translated using Weblate (French)
Currently translated at 75.8% (66 of 87 strings)
Translated using Weblate (Slovak)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Hungarian)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Tigrinya)
Currently translated at 21.8% (167 of 764 strings)
Translated using Weblate (Hindi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Azerbaijani)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Belarusian)
Currently translated at 99.0% (757 of 764 strings)
Translated using Weblate (Slovak)
Currently translated at 77.0% (67 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Bulgarian)
Currently translated at 3.4% (3 of 87 strings)
Translated using Weblate (Santali)
Currently translated at 1.1% (1 of 87 strings)
Translated using Weblate (Hindi)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (German)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Hindi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (Turkish)
Currently translated at 33.3% (29 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 78.1% (68 of 87 strings)
Translated using Weblate (German)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (French)
Currently translated at 74.7% (65 of 87 strings)
Translated using Weblate (French)
Currently translated at 74.7% (65 of 87 strings)
Translated using Weblate (Czech)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (Slovak)
Currently translated at 74.7% (65 of 87 strings)
Translated using Weblate (Hindi)
Currently translated at 77.0% (67 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 68.9% (60 of 87 strings)
Co-authored-by: 135 <135135@users.noreply.hosted.weblate.org>
Co-authored-by: Balázs Meskó <meskobalazs@mailbox.org>
Co-authored-by: Ding User <dengus@users.noreply.hosted.weblate.org>
Co-authored-by: Dizro <weblate.delirium794@passmail.net>
Co-authored-by: Erenay <erenaydev@proton.me>
Co-authored-by: Femini <nizamismidov4@gmail.com>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kuko <kuko7@protonmail.ch>
Co-authored-by: MatthieuPh <matthieu.philippe@protonmail.com>
Co-authored-by: Mickaël Binos <mickaelbinos@outlook.com>
Co-authored-by: Milan <mobrcian@hotmail.com>
Co-authored-by: Prasanta-Hembram <Prasantahembram720@gmail.com>
Co-authored-by: STV <steeven.lombardi@gmail.com>
Co-authored-by: ShareASmile <ShareASmile@users.noreply.hosted.weblate.org>
Co-authored-by: Sumon Kayal <sumankayalsuman4@gmail.com>
Co-authored-by: Trunars <trunars@abv.bg>
Co-authored-by: VfBFan <drop0815@posteo.de>
Co-authored-by: whistlingwoods <72640314+whistlingwoods@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/bg/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/cs/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/de/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/fr/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/hi/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pa/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/sat/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/sk/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/tr/
Translation: NewPipe/Metadata
Currently translated at 39.2% (300 of 764 strings)
Translated using Weblate (Lombard)
Currently translated at 0.3% (3 of 764 strings)
Translated using Weblate (French)
Currently translated at 75.8% (66 of 87 strings)
Translated using Weblate (Slovak)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Hungarian)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Tigrinya)
Currently translated at 21.8% (167 of 764 strings)
Translated using Weblate (Hindi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Azerbaijani)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Belarusian)
Currently translated at 99.0% (757 of 764 strings)
Translated using Weblate (Slovak)
Currently translated at 77.0% (67 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Bulgarian)
Currently translated at 3.4% (3 of 87 strings)
Translated using Weblate (Santali)
Currently translated at 1.1% (1 of 87 strings)
Translated using Weblate (Hindi)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (German)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Hindi)
Currently translated at 100.0% (764 of 764 strings)
Translated using Weblate (Punjabi)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (Turkish)
Currently translated at 33.3% (29 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 78.1% (68 of 87 strings)
Translated using Weblate (German)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (French)
Currently translated at 74.7% (65 of 87 strings)
Translated using Weblate (French)
Currently translated at 74.7% (65 of 87 strings)
Translated using Weblate (Czech)
Currently translated at 100.0% (87 of 87 strings)
Translated using Weblate (Slovak)
Currently translated at 74.7% (65 of 87 strings)
Translated using Weblate (Hindi)
Currently translated at 77.0% (67 of 87 strings)
Translated using Weblate (Punjabi)
Currently translated at 68.9% (60 of 87 strings)
Co-authored-by: 135 <135135@users.noreply.hosted.weblate.org>
Co-authored-by: Balázs Meskó <meskobalazs@mailbox.org>
Co-authored-by: Ding User <dengus@users.noreply.hosted.weblate.org>
Co-authored-by: Dizro <weblate.delirium794@passmail.net>
Co-authored-by: Erenay <erenaydev@proton.me>
Co-authored-by: Femini <nizamismidov4@gmail.com>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kuko <kuko7@protonmail.ch>
Co-authored-by: MatthieuPh <matthieu.philippe@protonmail.com>
Co-authored-by: Mickaël Binos <mickaelbinos@outlook.com>
Co-authored-by: Milan <mobrcian@hotmail.com>
Co-authored-by: Prasanta-Hembram <Prasantahembram720@gmail.com>
Co-authored-by: STV <steeven.lombardi@gmail.com>
Co-authored-by: ShareASmile <ShareASmile@users.noreply.hosted.weblate.org>
Co-authored-by: Sumon Kayal <sumankayalsuman4@gmail.com>
Co-authored-by: Trunars <trunars@abv.bg>
Co-authored-by: VfBFan <drop0815@posteo.de>
Co-authored-by: whistlingwoods <72640314+whistlingwoods@users.noreply.github.com>
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/bg/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/cs/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/de/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/fr/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/hi/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/pa/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/sat/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/sk/
Translate-URL: https://hosted.weblate.org/projects/newpipe/metadata/tr/
Translation: NewPipe/Metadata
When resuming a download after interruption, if the server returns
HTTP 200 (full resource) instead of HTTP 206 (partial content), the
code correctly resets mMission.done but fails to reset the 'start'
variable. This causes the subsequent file seek to use a stale offset,
writing new data at incorrect positions.
This bug causes file corruption for large downloads (>5GB) that are
interrupted and resumed, particularly when:
- Switching between WiFi networks
- Server CDN returning different responses
- Connection drops during long downloads
The corruption manifests as duplicate data regions in the file,
which for MP4 downloads results in multiple MOOV atoms and
broken seek functionality.
Fix: Reset start=0 when HTTP 200 is received, ensuring the file
write position correctly restarts from the beginning of the current
resource.
(cherry picked from commit 08008ca6f958fe9f2768447047b3225292f10ca7)
The workflow can be triggered by creating a comment on a merged PR: /backport <TARGET_BRANCH>
The backport can only be triggered by people with write access to the repository.
Co-authored-by: AbsurdlyLongUsername <22662897+absurdlylongusername@users.noreply.github.com>
When resuming a download after interruption, if the server returns
HTTP 200 (full resource) instead of HTTP 206 (partial content), the
code correctly resets mMission.done but fails to reset the 'start'
variable. This causes the subsequent file seek to use a stale offset,
writing new data at incorrect positions.
This bug causes file corruption for large downloads (>5GB) that are
interrupted and resumed, particularly when:
- Switching between WiFi networks
- Server CDN returning different responses
- Connection drops during long downloads
The corruption manifests as duplicate data regions in the file,
which for MP4 downloads results in multiple MOOV atoms and
broken seek functionality.
Fix: Reset start=0 when HTTP 200 is received, ensuring the file
write position correctly restarts from the beginning of the current
resource.
Feat: Downloading: Add opus audio metadata tags for title, author, date, and a comment tag with the originating URL
This removes the DownloadManagerService.EXTRA_SOURCE field, which is always inferred from the StreamInfo.