From e3fe78843cbde7aabb6a887a33c25718d69ed903 Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 31 Oct 2023 13:22:06 +0400 Subject: [PATCH] Updated on 2026-08-14 --- .../products/wallet/ui/BackupAnimator.kt | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/BackupAnimator.kt b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/BackupAnimator.kt index 537ed92d90..94de063a63 100644 --- a/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/BackupAnimator.kt +++ b/app/src/main/java/com/tangem/tap/features/onboarding/products/wallet/ui/BackupAnimator.kt @@ -4,9 +4,7 @@ import com.google.android.material.button.MaterialButton import com.tangem.tap.common.extensions.show import com.tangem.tap.common.postUiDelayBg import com.tangem.tap.features.onboarding.products.wallet.redux.BackupState -import com.tangem.tap.features.onboarding.products.wallet.ui.BackupCardType.FIRST_BACKUP -import com.tangem.tap.features.onboarding.products.wallet.ui.BackupCardType.ORIGIN -import com.tangem.tap.features.onboarding.products.wallet.ui.BackupCardType.SECOND_BACKUP +import com.tangem.tap.features.onboarding.products.wallet.ui.BackupCardType.* import com.tangem.wallet.databinding.FragmentOnboardingWalletBinding /** @@ -29,7 +27,7 @@ class WalletBackupAnimator( private val viewState: State = when (cardsWidget.leapfrogWidget.getViewsCount()) { 2 -> State.TwoCards - 3 -> State.TreeCards + 3 -> State.ThreeCards else -> throw UnsupportedOperationException() } @@ -131,7 +129,7 @@ class WalletBackupAnimator( } } } - State.TreeCards -> { + State.ThreeCards -> { when (backupCard) { 1 -> { if (firstBackupCardAnimated) return @@ -147,6 +145,15 @@ class WalletBackupAnimator( if (secondBackupCardAnimated) return secondBackupCardAnimated = true + /* + * !!! Workaround !!! + * For interrupted backup + * */ + if (!firstBackupCardAnimated) { + showWriteBackupCard(state, backupCard = 1) + return + } + SECOND_BACKUP.alpha(1f) cardsWidget.leapfrogWidget.leap { ORIGIN.alpha(0.4f) @@ -165,7 +172,7 @@ class WalletBackupAnimator( } private enum class State { - TreeCards, + ThreeCards, TwoCards, } @@ -186,7 +193,7 @@ class WalletBackupAnimator( } } SECOND_BACKUP -> { - if (viewState != State.TreeCards) return + if (viewState != State.ThreeCards) return cardsWidget.getSecondBackupCardView().animate().apply { alpha(alpha) this.startDelay = startDelay @@ -201,7 +208,7 @@ class WalletBackupAnimator( ORIGIN -> cardsWidget.getOriginCardView().alpha = alpha FIRST_BACKUP -> cardsWidget.getFirstBackupCardView().alpha = alpha SECOND_BACKUP -> { - if (viewState != State.TreeCards) return + if (viewState != State.ThreeCards) return cardsWidget.getSecondBackupCardView().alpha = alpha } } @@ -212,7 +219,7 @@ class WalletBackupAnimator( ORIGIN -> cardsWidget.getOriginCardView().show() FIRST_BACKUP -> cardsWidget.getFirstBackupCardView().show() SECOND_BACKUP -> { - if (viewState != State.TreeCards) return + if (viewState != State.ThreeCards) return cardsWidget.getSecondBackupCardView().show() } }