diff --git a/app/src/main/java/org/schabi/newpipe/local/feed/notifications/NotificationHelper.kt b/app/src/main/java/org/schabi/newpipe/local/feed/notifications/NotificationHelper.kt index 942094c0c..659088ef2 100644 --- a/app/src/main/java/org/schabi/newpipe/local/feed/notifications/NotificationHelper.kt +++ b/app/src/main/java/org/schabi/newpipe/local/feed/notifications/NotificationHelper.kt @@ -14,16 +14,12 @@ import androidx.core.app.NotificationManagerCompat import androidx.core.app.PendingIntentCompat import androidx.core.content.ContextCompat import androidx.core.content.getSystemService -import androidx.core.graphics.drawable.toBitmapOrNull import androidx.preference.PreferenceManager -import coil.executeBlocking -import coil.imageLoader -import coil.request.ImageRequest import org.schabi.newpipe.R import org.schabi.newpipe.extractor.stream.StreamInfoItem import org.schabi.newpipe.local.feed.service.FeedUpdateInfo import org.schabi.newpipe.util.NavigationHelper -import org.schabi.newpipe.util.image.ImageStrategy +import org.schabi.newpipe.util.image.CoilHelper /** * Helper for everything related to show notifications about new streams to the user. @@ -68,24 +64,15 @@ class NotificationHelper(val context: Context) { summaryBuilder.setStyle(style) // open the channel page when clicking on the summary notification + val intent = NavigationHelper + .getChannelIntent(context, data.serviceId, data.url) + .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK) summaryBuilder.setContentIntent( - PendingIntentCompat.getActivity( - context, - data.pseudoId, - NavigationHelper - .getChannelIntent(context, data.serviceId, data.url) - .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK), - 0, - false - ) + PendingIntentCompat.getActivity(context, data.pseudoId, intent, 0, false) ) - val request = ImageRequest.Builder(context) - .data(data.avatarUrl?.takeIf { ImageStrategy.shouldLoadImages() }) - .placeholder(R.drawable.ic_newpipe_triangle_white) - .error(R.drawable.ic_newpipe_triangle_white) - .build() - val avatarIcon = context.imageLoader.executeBlocking(request).drawable?.toBitmapOrNull() + val avatarIcon = + CoilHelper.loadBitmapBlocking(context, data.avatarUrl, R.drawable.ic_newpipe_triangle_white) summaryBuilder.setLargeIcon(avatarIcon) diff --git a/app/src/main/java/org/schabi/newpipe/player/seekbarpreview/SeekbarPreviewThumbnailHolder.java b/app/src/main/java/org/schabi/newpipe/player/seekbarpreview/SeekbarPreviewThumbnailHolder.java index c7c53b097..d09664aeb 100644 --- a/app/src/main/java/org/schabi/newpipe/player/seekbarpreview/SeekbarPreviewThumbnailHolder.java +++ b/app/src/main/java/org/schabi/newpipe/player/seekbarpreview/SeekbarPreviewThumbnailHolder.java @@ -179,7 +179,7 @@ public class SeekbarPreviewThumbnailHolder { // Gets the bitmap within the timeout of 15 seconds imposed by default by OkHttpClient // Ensure that you are not running on the main thread, otherwise this will hang - final var bitmap = CoilHelper.INSTANCE.loadBitmap(App.getApp(), url); + final var bitmap = CoilHelper.INSTANCE.loadBitmapBlocking(App.getApp(), url); if (sw != null) { Log.d(TAG, "Download of bitmap for seekbarPreview from '" + url + "' took " diff --git a/app/src/main/java/org/schabi/newpipe/util/external_communication/ShareUtils.java b/app/src/main/java/org/schabi/newpipe/util/external_communication/ShareUtils.java index 3e93abf4d..087345af5 100644 --- a/app/src/main/java/org/schabi/newpipe/util/external_communication/ShareUtils.java +++ b/app/src/main/java/org/schabi/newpipe/util/external_communication/ShareUtils.java @@ -369,7 +369,7 @@ public final class ShareUtils { @NonNull final Context context, @NonNull final String thumbnailUrl) { try { - final var bitmap = CoilHelper.INSTANCE.loadBitmap(context, thumbnailUrl); + final var bitmap = CoilHelper.INSTANCE.loadBitmapBlocking(context, thumbnailUrl); if (bitmap == null) { return null; } diff --git a/app/src/main/java/org/schabi/newpipe/util/image/CoilHelper.kt b/app/src/main/java/org/schabi/newpipe/util/image/CoilHelper.kt index 3977212bf..62c60c92e 100644 --- a/app/src/main/java/org/schabi/newpipe/util/image/CoilHelper.kt +++ b/app/src/main/java/org/schabi/newpipe/util/image/CoilHelper.kt @@ -19,12 +19,15 @@ import org.schabi.newpipe.ktx.scale import kotlin.math.min object CoilHelper { - private const val TAG = "CoilHelper" + private val TAG = CoilHelper::class.java.simpleName - fun loadBitmap(context: Context, url: String): Bitmap? { - val request = ImageRequest.Builder(context) - .data(url) - .build() + @JvmOverloads + fun loadBitmapBlocking( + context: Context, + url: String?, + placeholderResId: Int = 0 + ): Bitmap? { + val request = getImageRequest(context, url, placeholderResId).build() return context.imageLoader.executeBlocking(request).drawable?.toBitmapOrNull() }