diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/ui/UPILiteSection.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/ui/UPILiteSection.kt index ec7353bdd3..439898f36f 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/ui/UPILiteSection.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/ui/UPILiteSection.kt @@ -177,7 +177,8 @@ fun UPILiteSection( val ctaButtonEnabled by remember { derivedStateOf { if (isDelayedOnboardingExperimentEnabled) - !enableButtonLottie && enteredAmount.isAmountValid() && !isInvalidAmount + !enableButtonLottie && enteredAmount.isAmountValid() && !isInvalidAmount || + (mainCtaState !is UPILiteMainCtaState.AddBalance) else (mainCtaState !is UPILiteMainCtaState.AddBalance) || isCtaButtonActiveAndBottomSheetDismissbale diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/viewmodel/UPILiteViewModel.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/viewmodel/UPILiteViewModel.kt index 5a09c96bc9..36ba855923 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/viewmodel/UPILiteViewModel.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/lite/viewmodel/UPILiteViewModel.kt @@ -479,7 +479,6 @@ constructor( init { fetchNaviPayUPILiteConfig() updatenaviPaySessionAttributes() - updateLiteAccountBalanceIfPresentInPref() getActiveLiteAccountInfoFromSharedPref() setLitmusExperimentValues() } @@ -814,15 +813,17 @@ constructor( return getCustomerStatus() == NaviPayCustomerStatus.LINKED_VPA } - private fun updateLiteAccountBalanceIfPresentInPref() { + private fun updateLiteAccountBalanceIfPresentInPref(shouldAutoInitTopUp: Boolean) { val balanceFromSharedPref = activeLiteAccountInfoFromSharedPref.balance if (balanceFromSharedPref.isNotEmpty()) { if (activeLiteAccountInfoFromSharedPref.isClBound) { updateIsUserOnboarded(isUserOnboarded = true) updateUPILiteBalance(balance = balanceFromSharedPref) - updateEnteredAmount( - amount = getPreFilledTopUpAmount(balance = balanceFromSharedPref) - ) + if (!shouldAutoInitTopUp) { + updateEnteredAmount( + amount = getPreFilledTopUpAmount(balance = balanceFromSharedPref) + ) + } } if ( @@ -857,7 +858,9 @@ constructor( isActiveLiteAccountPresent && balanceFromSharedPref.isEmpty() ) updateBankAccountState(bankAccountsState = BankAccountsState.Loading) - updateLiteAccountBalanceIfPresentInPref() + updateLiteAccountBalanceIfPresentInPref( + shouldAutoInitTopUp = shouldAutoInitTopUp + ) updateLinkedAccountInfoWithActiveLiteAccount() fireUpiLiteScreenLandEvent( isActiveLiteAccountPresent = isActiveLiteAccountPresent diff --git a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryScreen.kt b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryScreen.kt index 73d0d1b39e..6000d38a6e 100644 --- a/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryScreen.kt +++ b/android/navi-pay/src/main/kotlin/com/navi/pay/management/transactionhistory/ui/TransactionHistoryScreen.kt @@ -211,7 +211,9 @@ fun TransactionHistoryScreen( } val onBackClick = { - if ( + if (bottomSheetState.isVisible) { + closeSheet() + } else if ( payeeTransactionHistoryEntity?.isPayeeLevelTransactionHistory == true || !naviPayActivity.needsResult ) { @@ -219,7 +221,6 @@ fun TransactionHistoryScreen( } else { naviPayActivity.finish() } - Unit } BackHandler { onBackClick() }