Merge pull request #2788 from Bnyro/master

Fix the notification thumbnail vanishing
This commit is contained in:
Bnyro 2023-01-21 11:24:48 +01:00 committed by GitHub
commit 497bc9c2dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -38,6 +38,7 @@ class NowPlayingNotification(
) {
private var videoId: String? = null
private var streams: Streams? = null
private var bitmap: Bitmap? = null
/**
* The [MediaSessionCompat] for the [streams].
@ -105,8 +106,17 @@ class NowPlayingNotification(
): Bitmap? {
if (DataSaverMode.isEnabled(context)) return null
var bitmap: Bitmap? = null
if (bitmap == null) enqueueThumbnailRequest(callback)
return bitmap
}
override fun getCurrentSubText(player: Player): CharSequence? {
return streams?.uploader
}
}
private fun enqueueThumbnailRequest(callback: PlayerNotificationManager.BitmapCallback) {
val request = ImageRequest.Builder(context)
.data(streams?.thumbnailUrl)
.target { result ->
@ -123,13 +133,6 @@ class NowPlayingNotification(
// enqueue the thumbnail loading request
ImageHelper.imageLoader.enqueue(request)
return bitmap
}
override fun getCurrentSubText(player: Player): CharSequence? {
return streams?.uploader
}
}
private val customActionReceiver = object : CustomActionReceiver {
@ -257,6 +260,8 @@ class NowPlayingNotification(
) {
this.videoId = videoId
this.streams = streams
// reset the thumbnail bitmap in order to become reloaded for the new video
this.bitmap = null
if (playerNotification == null) {
createMediaSession()