From d98dcfd407ec157d91764dd1ee925c8ce2d7d946 Mon Sep 17 00:00:00 2001 From: Shihaam Abdul Rahman Date: Fri, 25 Sep 2026 03:19:38 +0500 Subject: [PATCH] auto select from account after to account is selected --- .../sar/basedbank/ui/home/TransferFragment.kt | 22 +++++++++---------- 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt b/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt index bf2f125..e65bb25 100644 --- a/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt +++ b/app/src/main/java/sh/sar/basedbank/ui/home/TransferFragment.kt @@ -342,18 +342,7 @@ class TransferFragment : Fragment() { val colorHex = bundle.getString(ContactPickerSheetFragment.KEY_COLOR) ?: "#607D8B" val imageHash = bundle.getString(ContactPickerSheetFragment.KEY_IMAGE_HASH) prefillToDirectly(accountNumber, label, subtitle, colorHex, imageHash) - if (selectedAccount == null) { - val defaultNum = CredentialStore(requireContext()).getDefaultAccountNumber() - if (defaultNum != null) { - val defaultAcc = viewModel.accounts.value?.firstOrNull { it.accountNumber == defaultNum } - if (defaultAcc != null) { - selectedAccount = defaultAcc - updateAmountPrefix(defaultAcc) - showFromCard(defaultAcc) - updateTransferButton() - } - } - } + selectDefaultSourceIfNone() } binding.btnPickContact.setOnClickListener { @@ -793,9 +782,18 @@ class TransferFragment : Fragment() { colorHex = contact.bankColor, imageHash = contact.customerImgHash ) + selectDefaultSourceIfNone() } } + /** Picks the user's default account as the source when a recipient is chosen before any source. */ + private fun selectDefaultSourceIfNone() { + if (selectedAccount != null) return + val defaultNum = CredentialStore(requireContext()).getDefaultAccountNumber() ?: return + val defaultAcc = viewModel.accounts.value?.firstOrNull { it.accountNumber == defaultNum } ?: return + selectSourceAccount(defaultAcc) + } + private fun lookupAccount() { if (selectedAccount == null) { val defaultNum = CredentialStore(requireContext()).getDefaultAccountNumber()