fix(ui/downloads): image preview

- fix blur
- add crossfade
This commit is contained in:
rhunk 2023-08-06 16:42:37 +02:00
parent 6eb5ead35d
commit 00b6f25933

View File

@ -52,6 +52,7 @@ import coil.compose.rememberAsyncImagePainter
import coil.decode.VideoFrameDecoder import coil.decode.VideoFrameDecoder
import coil.memory.MemoryCache import coil.memory.MemoryCache
import coil.request.ImageRequest import coil.request.ImageRequest
import coil.size.Precision
import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import me.rhunk.snapenhance.R import me.rhunk.snapenhance.R
@ -150,25 +151,26 @@ class DownloadsSection : Section() {
.fillMaxWidth() .fillMaxWidth()
.clip(MaterialTheme.shapes.medium) .clip(MaterialTheme.shapes.medium)
) { ) {
Box(modifier = Modifier.height(120.dp)) { Box(modifier = Modifier.height(100.dp)) {
Image( Image(
painter = rememberAsyncImagePainter( painter = rememberAsyncImagePainter(
model = ImageRequest.Builder(context.androidContext) model = ImageRequest.Builder(context.androidContext)
.data(download.outputFile) .data(download.outputFile)
.memoryCacheKey(download.outputFile) .memoryCacheKey(download.outputFile)
.crossfade(true)
.build(), .build(),
imageLoader = imageLoader imageLoader = imageLoader
), ),
modifier = Modifier modifier = Modifier
.matchParentSize() .matchParentSize()
.blur(5.dp), .blur(12.dp),
contentDescription = null, contentDescription = null,
contentScale = ContentScale.FillWidth contentScale = ContentScale.FillWidth
) )
Row( Row(
modifier = Modifier modifier = Modifier
.padding(start = 16.dp, end = 16.dp) .padding(start = 10.dp, end = 10.dp)
.fillMaxWidth() .fillMaxWidth()
.fillMaxHeight(), .fillMaxHeight(),
verticalAlignment = Alignment.CenterVertically verticalAlignment = Alignment.CenterVertically
@ -188,6 +190,8 @@ class DownloadsSection : Section() {
model = ImageRequest.Builder(context.androidContext) model = ImageRequest.Builder(context.androidContext)
.data(download.metadata.iconUrl) .data(download.metadata.iconUrl)
.fallback(R.drawable.bitmoji_blank) .fallback(R.drawable.bitmoji_blank)
.precision(Precision.INEXACT)
.crossfade(true)
.memoryCacheKey(download.metadata.iconUrl) .memoryCacheKey(download.metadata.iconUrl)
.build(), .build(),
imageLoader = imageLoader imageLoader = imageLoader