diff --git a/src/components/Send/SendForm.tsx b/src/components/Send/SendForm.tsx
index 9f387fbea..51c937388 100644
--- a/src/components/Send/SendForm.tsx
+++ b/src/components/Send/SendForm.tsx
@@ -228,6 +228,8 @@ interface InnerSendFormProps {
feeConfigValues?: FeeValues
reloadFeeConfigValues: () => void
disabled?: boolean
+ isDisplayReloadInShowUtxos: boolean
+ setIsDisplayReloadInShowUtxos: (arg: boolean) => void
}
const InnerSendForm = ({
@@ -241,6 +243,8 @@ const InnerSendForm = ({
feeConfigValues,
reloadFeeConfigValues,
disabled = false,
+ isDisplayReloadInShowUtxos,
+ setIsDisplayReloadInShowUtxos,
}: InnerSendFormProps) => {
const { t } = useTranslation()
const serviceInfo = useServiceInfo()
@@ -279,6 +283,8 @@ const InnerSendForm = ({
isLoading={isLoading}
disabled={disabled}
variant={showCoinjoinPreconditionViolationAlert ? 'warning' : 'default'}
+ isDisplayReloadInShowUtxos={isDisplayReloadInShowUtxos}
+ setIsDisplayReloadInShowUtxos={setIsDisplayReloadInShowUtxos}
/>
{showCoinjoinPreconditionViolationAlert && (
@@ -380,6 +386,8 @@ type SendFormProps = Omit & {
formRef?: React.Ref>
blurred?: boolean
wallet: CurrentWallet
+ isDisplayReloadInShowUtxos: boolean
+ setIsDisplayReloadInShowUtxos: (arg: boolean) => void
}
export const SendForm = ({
diff --git a/src/components/Send/ShowUtxos.tsx b/src/components/Send/ShowUtxos.tsx
index f8325f78c..4d480a153 100644
--- a/src/components/Send/ShowUtxos.tsx
+++ b/src/components/Send/ShowUtxos.tsx
@@ -31,6 +31,8 @@ interface ShowUtxosProps {
isOpen: boolean
onCancel: () => void
jarIndex: String
+ isDisplayReloadInShowUtxos: boolean
+ setIsDisplayReloadInShowUtxos: (arg: boolean) => void
}
interface UtxoRowProps {
@@ -283,7 +285,15 @@ const Divider = ({ isState, setIsState, className }: DividerProps) => {
)
}
-const ShowUtxos = ({ walletInfo, wallet, isOpen, onCancel, jarIndex }: ShowUtxosProps) => {
+const ShowUtxos = ({
+ walletInfo,
+ wallet,
+ isOpen,
+ onCancel,
+ jarIndex,
+ isDisplayReloadInShowUtxos,
+ setIsDisplayReloadInShowUtxos,
+}: ShowUtxosProps) => {
const [alert, setAlert] = useState(undefined)
const [showFrozenUtxos, setShowFrozenUtxos] = useState(false)
const [unFrozenUtxos, setUnFrozenUtxos] = useState([])
@@ -326,7 +336,11 @@ const ShowUtxos = ({ walletInfo, wallet, isOpen, onCancel, jarIndex }: ShowUtxos
const abortCtrl = new AbortController()
try {
setIsLoading(true)
- await reloadCurrentWalletInfo.reloadDisplay({ signal: abortCtrl.signal })
+ await reloadCurrentWalletInfo.reloadUtxos({ signal: abortCtrl.signal })
+ if (isDisplayReloadInShowUtxos) {
+ await reloadCurrentWalletInfo.reloadDisplay({ signal: abortCtrl.signal })
+ setIsDisplayReloadInShowUtxos(false)
+ }
loadData(walletInfo)
setIsLoading(false)
} catch (err: any) {
@@ -334,7 +348,7 @@ const ShowUtxos = ({ walletInfo, wallet, isOpen, onCancel, jarIndex }: ShowUtxos
setAlert({ variant: 'danger', message: err.message, dismissible: true })
}
}
- }, [reloadCurrentWalletInfo, loadData, walletInfo])
+ }, [isDisplayReloadInShowUtxos, setIsDisplayReloadInShowUtxos, reloadCurrentWalletInfo, loadData, walletInfo])
//Effect to Reload walletInfo only once
useEffect(() => {
diff --git a/src/components/Send/SourceJarSelector.tsx b/src/components/Send/SourceJarSelector.tsx
index 7fb2fb17d..e2b1adf5e 100644
--- a/src/components/Send/SourceJarSelector.tsx
+++ b/src/components/Send/SourceJarSelector.tsx
@@ -17,6 +17,8 @@ export type SourceJarSelectorProps = {
wallet: CurrentWallet
isLoading: boolean
disabled?: boolean
+ isDisplayReloadInShowUtxos: boolean
+ setIsDisplayReloadInShowUtxos: (arg: boolean) => void
}
interface ShowUtxosProps {
@@ -32,6 +34,8 @@ export const SourceJarSelector = ({
variant,
isLoading,
disabled = false,
+ isDisplayReloadInShowUtxos,
+ setIsDisplayReloadInShowUtxos,
}: SourceJarSelectorProps) => {
const { t } = useTranslation()
@@ -71,6 +75,8 @@ export const SourceJarSelector = ({
})
}}
jarIndex={showUtxos.jarIndex}
+ isDisplayReloadInShowUtxos={isDisplayReloadInShowUtxos}
+ setIsDisplayReloadInShowUtxos={setIsDisplayReloadInShowUtxos}
/>
)}
{jarBalances.map((it) => {
diff --git a/src/components/Send/index.tsx b/src/components/Send/index.tsx
index 1aae7b658..52850be62 100644
--- a/src/components/Send/index.tsx
+++ b/src/components/Send/index.tsx
@@ -91,6 +91,8 @@ export default function Send({ wallet }: SendProps) {
const reloadServiceInfo = useReloadServiceInfo()
const loadConfigValue = useLoadConfigValue()
+ const [isDisplayReloadInShowUtxos, setIsDisplayReloadInShowUtxos] = useState(true)
+
const isCoinjoinInProgress = useMemo(() => serviceInfo?.coinjoinInProgress === true, [serviceInfo])
const isMakerRunning = useMemo(() => serviceInfo?.makerRunning === true, [serviceInfo])
const isRescanningInProgress = useMemo(() => serviceInfo?.rescanning === true, [serviceInfo])
@@ -266,6 +268,7 @@ export default function Send({ wallet }: SendProps) {
txid,
}),
})
+ setIsDisplayReloadInShowUtxos(true)
setWaitForUtxosToBeSpent(inputs.map((it: any) => it.outpoint))
success = true
} else {
@@ -490,6 +493,8 @@ export default function Send({ wallet }: SendProps) {
loadNewWalletAddress={loadNewWalletAddress}
feeConfigValues={feeConfigValues}
reloadFeeConfigValues={reloadFeeConfigValues}
+ isDisplayReloadInShowUtxos={isDisplayReloadInShowUtxos}
+ setIsDisplayReloadInShowUtxos={setIsDisplayReloadInShowUtxos}
/>
{showConfirmAbortModal && (