From f08da722e2cf712569dc7e7d2b19b8aba2c4f824 Mon Sep 17 00:00:00 2001 From: Tlaster Date: Tue, 30 Apr 2024 16:05:27 +0900 Subject: [PATCH] fix build --- .../ui/component/subSamplingEligibility.kt | 55 ------------------- 1 file changed, 55 deletions(-) delete mode 100644 app/src/main/java/dev/dimension/flare/ui/component/subSamplingEligibility.kt diff --git a/app/src/main/java/dev/dimension/flare/ui/component/subSamplingEligibility.kt b/app/src/main/java/dev/dimension/flare/ui/component/subSamplingEligibility.kt deleted file mode 100644 index cdda9f4f3..000000000 --- a/app/src/main/java/dev/dimension/flare/ui/component/subSamplingEligibility.kt +++ /dev/null @@ -1,55 +0,0 @@ -@file:Suppress("INVISIBLE_MEMBER", "INVISIBLE_REFERENCE") - -package dev.dimension.flare.ui.component - -import android.annotation.SuppressLint -import android.util.TypedValue -import coil3.decode.DecodeUtils -import coil3.gif.isGif -import coil3.svg.isSvg -import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.withContext -import me.saket.telephoto.subsamplingimage.AssetImageSource -import me.saket.telephoto.subsamplingimage.FileImageSource -import me.saket.telephoto.subsamplingimage.RawImageSource -import me.saket.telephoto.subsamplingimage.ResourceImageSource -import me.saket.telephoto.subsamplingimage.SubSamplingImageSource -import me.saket.telephoto.subsamplingimage.UriImageSource -import okio.FileSystem -import okio.Source -import okio.buffer -import okio.source - -context(Resolver) -internal suspend fun SubSamplingImageSource.canBeSubSampled(): Boolean { - val preventSubSampling = - when (this) { - is ResourceImageSource -> isVectorDrawable() - is AssetImageSource -> canBeSubSampled() - is UriImageSource -> canBeSubSampled() - is FileImageSource -> canBeSubSampled(FileSystem.SYSTEM.source(path)) - is RawImageSource -> canBeSubSampled(source.invoke()) - } - return !preventSubSampling -} - -context(Resolver) -private fun ResourceImageSource.isVectorDrawable(): Boolean = - TypedValue().apply { - request.context.resources.getValue(id, this, true) - }.string.endsWith(".xml") - -context(Resolver) -private suspend fun AssetImageSource.canBeSubSampled(): Boolean = canBeSubSampled(peek(request.context).source()) - -context(Resolver) -@SuppressLint("Recycle") -private suspend fun UriImageSource.canBeSubSampled(): Boolean = canBeSubSampled(peek(request.context).source()) - -private suspend fun canBeSubSampled(source: Source): Boolean { - return withContext(Dispatchers.IO) { - source.buffer().use { - DecodeUtils.isSvg(it) || DecodeUtils.isGif(it) - } - } -}