Updated on 2026-08-14

This commit is contained in:
Tangem 2022-11-15 16:45:21 +05:00
parent c1e167fe71
commit 93c85e4ce9
5 changed files with 9 additions and 6 deletions

View file

@ -47,7 +47,7 @@ sealed class GlobalAction : Action {
* For SaltPay cards unfinished backup resumed after scanning the card on HomeScreen through Onboarding.Start.
* See more Onboarding.Start, CheckForUnfinishedBackup
*/
object StartForUnfinishedBackup : Onboarding()
data class StartForUnfinishedBackup(val addedBackupCardsCount: Int) : Onboarding()
object Stop : Onboarding()
}

View file

@ -347,7 +347,7 @@ private fun handleBackupAction(appState: () -> AppState?, action: BackupAction)
}
}
is BackupAction.ResumeFoundUnfinishedBackup -> {
store.dispatch(GlobalAction.Onboarding.StartForUnfinishedBackup)
store.dispatch(GlobalAction.Onboarding.StartForUnfinishedBackup(backupService.addedBackupCardsCount))
store.dispatch(NavigationAction.NavigateTo(AppScreen.OnboardingWallet))
}
is BackupAction.DismissBackup -> {

View file

@ -52,7 +52,7 @@ private class ReducerForGlobalAction {
is GlobalAction.Onboarding.StartForUnfinishedBackup -> {
OnboardingWalletState(
backupState = state.backupState.copy(
maxBackupCards = 2,
maxBackupCards = action.addedBackupCardsCount,
canSkipBackup = false,
),
isSaltPay = false,

View file

@ -134,6 +134,7 @@ class WalletBackupAnimator(
1 -> {
if (firstBackupCardAnimated) return
firstBackupCardAnimated = true
FIRST_BACKUP.alpha(1f)
cardsWidget.leapfrogWidget.leap {
SECOND_BACKUP.alpha(0.4f)
@ -143,6 +144,7 @@ class WalletBackupAnimator(
2 -> {
if (secondBackupCardAnimated) return
secondBackupCardAnimated = true
SECOND_BACKUP.alpha(1f)
cardsWidget.leapfrogWidget.leap {
ORIGIN.alpha(0.4f)

View file

@ -90,7 +90,7 @@ class OnboardingWalletFragment : BaseFragment(R.layout.fragment_onboarding_walle
override fun loadToolbarMenu(): MenuProvider? = OnboardingMenuProvider()
private fun reInitCardsWidget(backupCardsCounts: Int) = with(binding) {
private fun reInitCardsWidgetIfNeeded(backupCardsCounts: Int) = with(binding) {
val viewBackupCount = flCardsContainer.childCount - 1
if (viewBackupCount <= 0) return@with
if (viewBackupCount == backupCardsCounts) return@with
@ -137,7 +137,7 @@ class OnboardingWalletFragment : BaseFragment(R.layout.fragment_onboarding_walle
override fun newState(state: OnboardingWalletState) {
if (activity == null || view == null) return
if (state.isSaltPay) reInitCardsWidget(1)
if (state.isSaltPay) reInitCardsWidgetIfNeeded(1)
animator.updateBackupState(state.backupState)
requireActivity().invalidateOptionsMenu()
@ -322,7 +322,7 @@ class OnboardingWalletFragment : BaseFragment(R.layout.fragment_onboarding_walle
private fun showWritePrimaryCard(state: BackupState, isSaltPay: Boolean) = with(binding) {
accessCodeDialog?.dismiss()
reInitCardsWidget(state.backupCardsNumber)
reInitCardsWidgetIfNeeded(state.backupCardsNumber)
prepareViewForFinalizeStep()
val cardIdFormatter = CardIdFormatter(CardIdDisplayFormat.LastMasked(4))
@ -358,6 +358,7 @@ class OnboardingWalletFragment : BaseFragment(R.layout.fragment_onboarding_walle
private fun showWriteBackupCard(state: BackupState, isSaltPay: Boolean) = with(binding) {
prepareViewForFinalizeStep()
reInitCardsWidgetIfNeeded(state.backupCardsNumber)
val cardNumber = (state.backupStep as? BackupStep.WriteBackupCard)?.cardNumber ?: 1
if (isSaltPay) {
tvHeader.text = getString(R.string.onboarding_saltpay_title_backup_card)