From f5b34ec8854040966af770fc8805fe95a4b226dc Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 21 Sep 2021 11:17:46 +0300 Subject: [PATCH] Updated on 2026-08-14 --- .../tap/features/details/redux/DetailsReducer.kt | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt index 132dbddb18..33c71239fb 100644 --- a/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt +++ b/app/src/main/java/com/tangem/tap/features/details/redux/DetailsReducer.kt @@ -175,12 +175,18 @@ private fun handleSecurityAction( state.copy(confirmScreenState = confirmScreenState) } is DetailsAction.ManageSecurity.SaveChanges.Success -> { - // Setting options to show only LongTap from now on + // Setting options to show only LongTap from now on for non-twins + val card = if (state.card?.isTwinCard() == true) { + state.card + } else { + state.card?.copy(isPin1Default = true, isPin2Default = true) + } state.copy( - card = state.card?.copy(isPin1Default = true, isPin2Default = true), + card = card, securityScreenState = state.securityScreenState?.copy( currentOption = state.securityScreenState.selectedOption, - allowedOptions = EnumSet.of(SecurityOption.LongTap) + allowedOptions = card?.let { prepareAllowedSecurityOptions(it) } + ?: EnumSet.of(SecurityOption.LongTap) )) } @@ -194,6 +200,9 @@ private fun prepareAllowedSecurityOptions(card: Card): EnumSet { val isDefaultPin2 = card.isPin2Default != false val allowedSecurityOptions = EnumSet.noneOf(SecurityOption::class.java) + if (card.isTwinCard()) { + allowedSecurityOptions.add(SecurityOption.PassCode) + } if ((isDefaultPin1 && isDefaultPin2) || !prohibitDefaultPin) { allowedSecurityOptions.add(SecurityOption.LongTap) }