Profpatsch
fc7daa96e9
PlayerHolder: kotlinify getters
2025-07-16 15:14:50 +02:00
Profpatsch
9b22773070
PlayerHolder: convert to kotlin (mechanical)
2025-07-16 15:14:49 +02:00
Profpatsch
86063fda6a
PlayQueueActivity: inline getServiceConnection() and bind()
...
Both are only used once, and it’s easier to see what’s going on if
they are just inlined in `onCreate`.
2025-07-16 15:07:43 +02:00
Profpatsch
c9be4066f2
PlayerService: inline init block & make non-optional
2025-07-16 15:07:43 +02:00
Profpatsch
462f0ad5c0
PlayerUIList: inline init block
2025-07-16 15:07:43 +02:00
Stypox
4e94b2602d
Merge pull request #12258 from Profpatsch/show-service-name-in-search
2025-07-16 15:02:43 +02:00
Stypox
4ddc0648ef
Merge pull request #12412 from Stypox/fix-ghost-notifications
2025-07-14 21:56:22 +02:00
Tobi
4c920a4406
Merge pull request #12367 from watermelon42/3783_Import_Soundcloud_likes
...
Support Soundcloud likes in channel and feed
2025-07-14 01:01:02 -07:00
watermelon42
1c0eabf75c
Updated extractor version to latest commit
2025-07-13 16:21:42 +02:00
Isira Seneviratne
183cc580fc
Merge pull request #12415 from Isira-Seneviratne/Zip-migrate-Path
...
Migrate zip import/export to use Path
2025-07-12 06:04:31 +05:30
watermelon42
f119a368d8
Added support for importing Soundcloud likes as a new tab before About
in a user's channel.
...
The likes are also retrieved in the feed if the user is subscribed to.
2025-07-11 09:50:33 +02:00
Isira Seneviratne
52ff052d6a
Merge pull request #12347 from Isira-Seneviratne/PlayQueueItem-equals
...
Add PlayQueueItem equals and hashCode
2025-07-10 02:18:43 +05:30
Isira Seneviratne
31f8dd05a7
Convert play queue classes to Kotlin
2025-07-09 07:48:08 +05:30
Isira Seneviratne
c2b6c71947
Rename .java to .kt
2025-07-09 07:48:07 +05:30
Isira Seneviratne
bb7873d157
Fix Sonar warning
2025-07-09 07:48:07 +05:30
Isira Seneviratne
e2a02a1f86
Fix some issues
2025-07-09 07:48:07 +05:30
Isira Seneviratne
690af88db9
Add PlayQueueItem equals and hashCode
2025-07-09 07:48:07 +05:30
Isira Seneviratne
4ffadc2057
Inline variable
2025-07-09 07:47:25 +05:30
Isira Seneviratne
225cb91105
Use InputStream#transferTo()
2025-07-09 07:47:25 +05:30
Isira Seneviratne
3e106b5e4f
Fix DB import/export issue
2025-07-09 07:47:25 +05:30
Isira Seneviratne
72b67ab5d4
Refactor zip import/export using Path
2025-07-09 07:47:25 +05:30
Isira Seneviratne
840084d2c9
Merge pull request #12419 from Isira-Seneviratne/Merge-dev-to-refactor
...
Merge dev to refactor
2025-07-09 07:46:11 +05:30
Isira Seneviratne
2acfefd0bc
Merge branch 'dev' into Merge-dev-to-refactor
...
# Conflicts:
# app/src/main/java/org/schabi/newpipe/player/helper/PlayerHolder.java
2025-07-09 07:10:18 +05:30
Stypox
f3c20d43be
Merge pull request #12410 from Stypox/fix-android-auto-thumbnails
2025-07-08 11:42:20 +02:00
Tobi
c9559fa801
Merge pull request #12416 from Stypox/fix-fullscreen-clear-queue-prompt
...
Fix fullscreen eliciting "clear queue" prompt
2025-07-07 11:47:27 -07:00
Stypox
8ab79488e9
Merge pull request #12409 from Stypox/readme-badge-size-fix
2025-07-07 16:26:20 +02:00
Stypox
f0b26e208b
Update notice about rewrite in the README
2025-07-07 16:25:38 +02:00
Stypox
79084568f2
Fix fullscreen eliciting "clear queue" prompt
2025-07-07 15:07:46 +02:00
Stypox
705b5e5580
Fix ghost notifications on Android 10
...
Fixes #12400 , see there for explanation. Citing from there:
So apparently the problem is onGetRoot always returning a BrowserRoot instance. Making it return null solved the issue (but again, breaks Android Auto compatibility). It turns out (see https://stackoverflow.com/q/63818988/ ) that onGetRoot is also used for media resumption https://developer.android.com/media/implement/surfaces/mobile#mediabrowserservice_implementation , which causes a new notification to pop up (in this case a useless notification because our onGetRoot does not return something that can be used for resumption). So what needs to be done is to check if rootHints?.getBoolean(EXTRA_RECENT) == true and if that's the case not return anything (as EXTRA_RECENT is used by the system for resumption).
The PackageValidator file is taken from 329a21b63c/common/src/main/java/com/example/android/uamp/media/PackageValidator.kt
.
2025-07-07 01:06:59 +02:00
Stypox
a4d457b2b2
Use Kotlin's .toUri() instead of Uri.parse()
2025-07-06 15:05:30 +02:00
Stypox
834c93f22a
Fix thumbnails appearing on Android Auto even if disabled
2025-07-06 14:49:09 +02:00
Stypox
a0adeb0099
Fix "Get it on F-Droid" appearing giant in README
2025-07-06 13:51:59 +02:00
Isira Seneviratne
2dd11f70a3
Merge pull request #12356 from dev-victoria/fix-json-importing-oldandroid
...
check if the JSON MimeType is supported
2025-07-04 07:06:34 +05:30
Stypox
d048bca8b4
Temporarily disable sonarcloud CI step
2025-06-28 15:17:18 +02:00
Diana Victoria Furrer
0c9f5ddcaf
change according to Isira-Seneviratne suggestion
2025-06-17 15:42:01 +02:00
Diana Victoria Furrer
aa75a1449f
use MimeTypeMap from android webkit to check if the json MimeType is unsupported
2025-06-15 02:19:56 +02:00
Stypox
d81b571d05
Merge pull request #12348 from Isira-Seneviratne/Merge-dev-to-refactor
2025-06-11 10:13:36 +02:00
Isira Seneviratne
6efb92a38f
Merge branch 'dev' into Merge-dev-to-refactor
...
# Conflicts:
# app/src/main/java/org/schabi/newpipe/MainActivity.java
2025-06-11 08:20:00 +05:30
Stypox
f16becc872
Merge pull request #12217 from SttApollo/Update-EmptyStateComposable
2025-06-06 15:49:13 +02:00
Stypox
60ea317e61
NoComments -> NoVideos in related items screen
2025-06-06 15:36:07 +02:00
Su TT
e53f0ff94a
Update EmptyStateComposable usages to include modifiers
2025-06-05 12:33:21 -04:00
Profpatsch
16e32dfc96
SearchFragment: show filter in brackets behind service name
...
This is still not perfect, but it will show the selected search filter
in addition to the service name, like: “Search YouTube (Playlists)”.
It will not distinguish between a YouTube Music and Youtube filter, so
it will display the same thing. Could be improved, but then the text
gets too long! :(
2025-06-05 14:30:04 +02:00
Profpatsch
006b4c9ae1
Merge pull request #11965 from Profpatsch/player-classes-kotlin-conversion
...
Some simple refactors & beginning of kotlin conversions of the player classes
2025-06-05 14:13:33 +02:00
Profpatsch
73fef268fc
PlayerService/PlayerUIList: some small improvements
2025-06-05 13:52:04 +02:00
Profpatsch
cf8fe95abf
PlayerService: runtime-assert that we get passed a service
...
We directly call the `getService` function after receiving the
argument, so resolving the WeakPointer should never return `null` in
our case.
Of course there could be a race condition in theory, but I feel like
if that happens we have bigger problems?
2025-06-05 13:52:04 +02:00
Profpatsch
36115c3164
PlayerService: remove !! where possible
...
It’s a bit unwieldy in places, but should improve the safety of the
code in the face of possible race conditions.
2025-06-05 13:52:04 +02:00
Profpatsch
be373dca8d
PlayerUIList: make UI list private
2025-06-05 13:52:04 +02:00
Profpatsch
f5a4af2d67
Player: destroy -> saveAndShutdown
2025-06-05 13:52:04 +02:00
Profpatsch
06cf511188
PlayerHolder: improve interface docstrings
2025-06-05 13:52:04 +02:00
Profpatsch
26050d808e
VideoPlayerUi: suppress warnings
...
The `R.id` link from the comment cannot be resolved, so let’s not link
it for now.
We are using some exoplayer2 resources, let’s silence the warning.
2025-06-05 13:52:04 +02:00