Updated on 2026-08-14
This commit is contained in:
parent
1bae7d2277
commit
bc174f2f06
2 changed files with 15 additions and 8 deletions
|
|
@ -1,15 +1,10 @@
|
|||
package com.tangem.features.account.createedit.ui
|
||||
|
||||
import android.content.res.Configuration
|
||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.border
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.*
|
||||
import androidx.compose.foundation.layout.*
|
||||
import androidx.compose.foundation.rememberScrollState
|
||||
import androidx.compose.foundation.shape.CircleShape
|
||||
import androidx.compose.foundation.shape.RoundedCornerShape
|
||||
import androidx.compose.foundation.verticalScroll
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.runtime.Composable
|
||||
|
|
@ -188,7 +183,7 @@ private fun AccountColor(colorsState: AccountCreateEditUM.Colors) {
|
|||
modifier = Modifier
|
||||
.fillMaxWidth()
|
||||
.padding(contentPadding),
|
||||
horizontalArrangement = Arrangement.spacedBy(4.dp),
|
||||
horizontalArrangement = Arrangement.spacedBy(4.dp, Alignment.CenterHorizontally),
|
||||
) {
|
||||
colorsState.list.fastForEach { color ->
|
||||
val isSelected = color == colorsState.selected
|
||||
|
|
@ -238,6 +233,7 @@ private fun AccountIcons(iconsState: AccountCreateEditUM.Icons) {
|
|||
FlowRow(
|
||||
maxItemsInEachRow = 6,
|
||||
modifier = Modifier.fillMaxWidth(),
|
||||
horizontalArrangement = Arrangement.Center,
|
||||
) {
|
||||
iconsState.list.fastForEachIndexed { index, icon ->
|
||||
val isSelected = icon == iconsState.selected
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ class AccountNodeRecognizer(private val blockchain: Blockchain) {
|
|||
// region Ethereum-like blockchains
|
||||
blockchain == Blockchain.Tezos -> ACCOUNT_NODE_INDEX
|
||||
blockchain == Blockchain.Quai -> ACCOUNT_NODE_INDEX
|
||||
blockchain.isEvm() -> ADDRESS_INDEX_NODE_INDEX
|
||||
blockchain.isEvm() && derivationPath.isEthDerivation() -> ADDRESS_INDEX_NODE_INDEX
|
||||
// endregion
|
||||
blockchain.isUTXO -> ACCOUNT_NODE_INDEX
|
||||
else -> ACCOUNT_NODE_INDEX
|
||||
|
|
@ -75,6 +75,13 @@ class AccountNodeRecognizer(private val blockchain: Blockchain) {
|
|||
.getOrNull()
|
||||
}
|
||||
|
||||
private fun DerivationPath.isEthDerivation(): Boolean {
|
||||
fun getIndex(nodeIndex: Int) = nodes.getOrNull(nodeIndex)?.getIndex(false)
|
||||
|
||||
return getIndex(FIRST_NODE_INDEX) == ETH_FIRST_NODE_VALUE &&
|
||||
getIndex(SECOND_NODE_INDEX) == ETH_SECOND_NODE_VALUE
|
||||
}
|
||||
|
||||
@Suppress("LongMethod")
|
||||
private fun Blockchain.isAccountsSupported(): Boolean {
|
||||
return when (this) {
|
||||
|
|
@ -253,5 +260,9 @@ class AccountNodeRecognizer(private val blockchain: Blockchain) {
|
|||
private companion object {
|
||||
const val ACCOUNT_NODE_INDEX = 2
|
||||
const val ADDRESS_INDEX_NODE_INDEX = 4
|
||||
const val FIRST_NODE_INDEX = 0
|
||||
const val ETH_FIRST_NODE_VALUE = 44L
|
||||
const val SECOND_NODE_INDEX = 1
|
||||
const val ETH_SECOND_NODE_VALUE = 60L
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue