Yevhen Babiichuk (DustDFG)
402f43e895
Fixed a bug that prevented the display of multiple empty playlists
...
Turned out this bug was already fixed two years ago but unfortunately
it made its way back again. It was solved in #9642 but back then another
method was used for querying playlists from db (for add playlist dialog) then in
ef4a6238c8 was introduced another method
which had the same problem as fixed in #9642 and which eventually replaced
original method in code for querying playlists from db (for add playlist dialog)
2026-01-15 12:27:07 +02:00
Yevhen Babiichuk (DustDFG)
914feef5e9
Fix playlist item dragging video to only neighbor positions
...
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
2026-01-12 20:35:14 +02:00
TobiGr
4ed2b9748f
Merge branch 'master' into dev
2026-01-11 22:53:11 +01:00
tobigr
6c5d58bed3
Fix minify step of release build by ignoring two classes
...
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)
2026-01-11 22:06:32 +01:00
Hosted Weblate
56489e5ddd
Translated using Weblate (Polish)
...
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
2026-01-11 15:01:52 +01:00
Hosted Weblate
8e389c49e6
Translated using Weblate (Polish)
...
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
2026-01-11 15:01:07 +01:00
Hosted Weblate
3323868042
Translated using Weblate (Bengali (India))
...
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
2026-01-09 21:14:38 +01:00
Hosted Weblate
df92431ee3
Translated using Weblate (Bengali (India))
...
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
2026-01-09 20:56:42 +01:00
Siddhesh Dhainje
a83762c4d7
Removed restoreInstanceState and resultServiceIntent condition
...
(cherry picked from commit 418e34172a )
2026-01-09 11:32:19 -08:00
Siddhesh Dhainje
381b383a43
Used requireArguments instead of getArguments
...
(cherry picked from commit a3673f8c3b )
2026-01-09 11:32:19 -08:00
Siddhesh Dhainje
d5d92e8340
Fix crash on screen rotation while entering SoundCloud import URL
...
(cherry picked from commit 23b7f21d7c )
2026-01-09 11:32:19 -08:00
Tobi
cafb1398cb
Merge pull request #12995 from siddhesh-06/siddhesh-06/fix/crash-on-soundcloud-import
...
Fix crash on screen rotation while entering SoundCloud import URL
2026-01-09 10:44:03 -08:00
Justin L
dc5c5b6604
Fix download resume corruption when server returns HTTP 200
...
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 08008ca6f9 )
2026-01-08 19:07:09 -08:00
Tobi
694124814e
Merge pull request #13014 from jloutsch/fix/download-resume-corruption
...
Fix download resume corruption when server returns HTTP 200
2026-01-08 19:05:49 -08:00
Tobi
e61bc012d9
Merge pull request #12990 from dustdfg/db_migration_kotlin
...
Use "factory" method for creating db migrations
2026-01-08 17:23:12 -08:00
Siddhesh Dhainje
418e34172a
Removed restoreInstanceState and resultServiceIntent condition
2026-01-08 21:31:31 +05:30
Tobi
680235ad51
Merge pull request #12922 from TobiGr/enqueue-ui
...
[PlayQueue] Fix incorrect UI states of PlayQueue items
2026-01-07 04:01:51 -08:00
Tobi
d4a124a3c4
Merge pull request #12931 from TobiGr/fix/audio-lang
...
[Player] Use original audio language by default
2026-01-07 03:21:39 -08:00
Tobi
635e6a56c7
Merge pull request #13008 from dustdfg/playlist_normal_drag
...
Allow dragging boorkmarked playlist in both directions
2026-01-06 09:11:37 -08:00
Justin L
08008ca6f9
Fix download resume corruption when server returns HTTP 200
...
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.
2026-01-06 09:03:44 -05:00
Yevhen Babiichuk (DustDFG)
02e559e57f
Commit all the playlist changes to db immediately
...
+ some additional minor code cleanup in the file
2026-01-06 12:36:50 +01:00
Yevhen Babiichuk (DustDFG)
9998d99a04
Allow dragging boorkmarked playlist in both directions
...
Ctrl+C/Ctrl+V from newpipe/local/playlist/LocalPlaylistFragment
2026-01-06 10:01:59 +02:00
Yevhen Babiichuk (DustDFG)
61c0d134d7
Commit all the playlist changes to db immediately
...
+ some additional minor code cleanup in the file
2026-01-05 22:59:14 +02:00
Siddhesh Dhainje
a3673f8c3b
Used requireArguments instead of getArguments
2026-01-04 21:40:40 +05:30
Yevhen Babiichuk (DustDFG)
35eb08baf0
Delete long orphaned file
...
Was oprhaned at 004c2fa55a
2026-01-04 13:53:43 +02:00
Siddhesh Dhainje
23b7f21d7c
Fix crash on screen rotation while entering SoundCloud import URL
2026-01-04 01:06:18 +05:30
tobigr
5cefafa145
Prepare for version 0.28.1 (1006)
2026-01-03 11:55:59 +01:00
Mira
49aaaebd86
Feat: opus metadata encoding ( #12974 )
...
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.
2026-01-03 11:55:59 +01:00
Yevhen Babiichuk (DustDFG)
0747b3a0a5
Use "factory" method for creating db migrations
2026-01-02 12:25:25 +02:00
Aayush Gupta
7283701073
Merge pull request #12978 from dustdfg/kotlin_merged
...
Conversion to kotlin of multiple files
2026-01-02 15:46:29 +08:00
Yevhen Babiichuk (DustDFG)
3ffcf11a3a
Merge inheritors of newpipe/player/playqueue/PlayQueueEvent and
...
convert it to kotlin
2026-01-01 23:05:16 +02:00
Aayush Gupta
1fb2b4a42e
Merge pull request #12981 from dustdfg/export_playlist_refactor
...
Refactor ExportPlaylist to use more idiomatic kotlin code
2026-01-01 21:40:05 +08:00
Yevhen Babiichuk (DustDFG)
83596ca907
Convert newpipe/settings/preferencesearch/PreferenceSearchResultListener to kotlin
2026-01-01 15:33:32 +02:00
Yevhen Babiichuk (DustDFG)
d9682f5e0a
Convert newpipe/player/PlayerType to kotlin
2026-01-01 15:33:32 +02:00
Yevhen Babiichuk (DustDFG)
ab3314eb1c
Convert newpipe/info_list/ItemViewMode to kotlin
2026-01-01 15:33:32 +02:00
Yevhen Babiichuk (DustDFG)
7d1d88fb87
Convert newpipe/local/playlist/PlayListShareMode to kotlin
2026-01-01 15:08:21 +02:00
Yevhen Babiichuk (DustDFG)
8379aa0a9d
Refactor ExportPlaylist to use more idiomatic kotlin code
2026-01-01 15:03:29 +02:00
Yevhen Babiichuk (DustDFG)
cd4cb40e6d
Convert newpipe/error/UserAction.java to kotlin
2026-01-01 11:04:19 +02:00
Yevhen Babiichuk (DustDFG)
f1b111212d
Convert newpipe/util/FilenameUtils.java to kotlin
...
Co-authored-by: Aayush Gupta <aayushgupta219@gmail.com >
2026-01-01 11:04:19 +02:00
Yevhen Babiichuk (DustDFG)
84c646713d
Convert newpipe/settings/preferencesearch/PreferenceSearchItem.java to kotlin
2026-01-01 11:04:19 +02:00
Yevhen Babiichuk (DustDFG)
873b2be9ca
Convert newpipe/util/text/TimestampLongPressClickableSpan.java to kotlin
...
Also convert one class used by it into java record
2026-01-01 11:04:19 +02:00
Yevhen Babiichuk (DustDFG)
4ef4ed15f1
Convert newpipe/util/image/PreferredImageQuality to kotlin
2026-01-01 11:04:19 +02:00
Yevhen Babiichuk (DustDFG)
fef8a2455c
Convert newpipe/util/image/ImageStrategy to kotlin
2026-01-01 11:04:19 +02:00
Yevhen Babiichuk (DustDFG)
3398b4cdc9
Convert newpipe/fragments/list/search/Suggestion{Item,ListAdapter} to kotlin
2026-01-01 11:04:19 +02:00
Yevhen Babiichuk (DustDFG)
74cf302bd6
Convert newpipe/local/playlist/RemotePlaylistManager to kotlin
2026-01-01 11:04:19 +02:00
Aayush Gupta
93166afde4
Merge pull request #12973 from dustdfg/require_preference
...
Replace findPreference(getString(resId) with its null safe shortcut
2026-01-01 13:36:26 +08:00
Aayush Gupta
6c238fafbe
fixup! Convert newpipe/util/KioskTranslator.java to kotlin
...
Copyright and license header are not doc-comments. Move them to the top of the file.
Also re-write it to follow the SPDX formatting as we have followed in the recent Kotlin
conversion.
Additionally, use a better name for the context parameter.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2025-12-31 17:05:17 +08:00
Tobi
e17b1a1fcc
Merge pull request #12975 from dustdfg/playlist_button_work
...
Correct typo in playlist db sql query
2025-12-30 22:58:06 -08:00
Yevhen Babiichuk (DustDFG)
7806a708c2
Correct typo in playlist db sql query
...
Solve #12855
2025-12-31 05:23:14 +02:00
Yevhen Babiichuk (DustDFG)
f6085d0044
Replace findPreference(getString(resId) with its null safe shortcut
2025-12-30 13:30:37 +02:00