From d3e3f5cfd5459a15802d22f9a7059ec6026bfc86 Mon Sep 17 00:00:00 2001 From: Tangem Date: Thu, 1 Dec 2022 21:02:04 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../ui/components/WalletItem.kt | 69 +++++++++---------- 1 file changed, 32 insertions(+), 37 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/features/walletSelector/ui/components/WalletItem.kt b/app/src/main/java/com/tangem/tap/features/walletSelector/ui/components/WalletItem.kt index f33664bbfb..c95d59deec 100644 --- a/app/src/main/java/com/tangem/tap/features/walletSelector/ui/components/WalletItem.kt +++ b/app/src/main/java/com/tangem/tap/features/walletSelector/ui/components/WalletItem.kt @@ -7,11 +7,15 @@ import androidx.compose.foundation.shape.CircleShape import androidx.compose.material.Icon import androidx.compose.material.Text import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.rememberUpdatedState import androidx.compose.ui.Alignment import androidx.compose.ui.ExperimentalComposeUiApi import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.BlendMode import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.ColorFilter import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource import androidx.compose.ui.res.pluralStringResource @@ -79,7 +83,16 @@ private fun WalletCardImage( .align(Alignment.Center) .width(TangemTheme.dimens.size56) .height(TangemTheme.dimens.size32) - .clip(TangemTheme.shapes.roundedCornersSmall) + .clip(TangemTheme.shapes.roundedCornersSmall2) + + val checkedColorFilter by rememberUpdatedState( + newValue = if (isChecked) { + ColorFilter.tint( + color = TangemTheme.colors.icon.accent.copy(alpha = .6f), + blendMode = BlendMode.SrcOver, + ) + } else null, + ) SubcomposeAsyncImage( modifier = cardImageModifier, @@ -89,46 +102,28 @@ private fun WalletCardImage( .build(), loading = { CardImageShimmer(modifier = cardImageModifier) }, error = { CardImagePlaceholder(modifier = cardImageModifier) }, + colorFilter = checkedColorFilter, contentDescription = null, ) - when { - isChecked -> { - Box( - modifier = cardImageModifier - .background( - color = TangemTheme.colors.icon.accent.copy(alpha = .5f), - ), - contentAlignment = Alignment.Center, - ) { - Icon( - painter = painterResource(id = R.drawable.ic_check_24), - tint = TangemTheme.colors.icon.primary2, - contentDescription = null, - ) - } + if (isSelected) { + Box( + modifier = Modifier + .align(Alignment.TopEnd) + .size(TangemTheme.dimens.size18) + .background( + color = Color.White, + shape = CircleShape, + ), + contentAlignment = Alignment.Center, + ) { + Icon( + modifier = Modifier.padding(all = (0.5).dp), + painter = painterResource(id = R.drawable.ic_check_circle_18), + tint = TangemTheme.colors.icon.accent, + contentDescription = null, + ) } - isSelected -> { - Box( - modifier = Modifier - .align(Alignment.TopEnd) - .size(TangemTheme.dimens.size18) - .background( - color = Color.White, - shape = CircleShape, - ), - contentAlignment = Alignment.Center, - ) { - Icon( - modifier = Modifier - .padding(all = (0.5).dp), - painter = painterResource(id = R.drawable.ic_check_circle_18), - tint = TangemTheme.colors.icon.accent, - contentDescription = null, - ) - } - } - else -> Unit } } }