diff options
| author | Adam Soltys <[email protected]> | 2026-06-26 13:43:38 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-06-26 13:43:38 -0700 |
| commit | 445a2e772eba5377f74a1b68fe7f80508c05fa9c (patch) | |
| tree | 159a79fd05eaa96430ff06dfc1839bbf036b32bc | |
| parent | 41c7f717ef9e8a3f87f4da620a8bdedb99b293ea (diff) | |
| download | coinosv3-445a2e772eba5377f74a1b68fe7f80508c05fa9c.tar.gz coinosv3-445a2e772eba5377f74a1b68fe7f80508c05fa9c.zip | |
Don't hold the send spinner up during the post-broadcast rescan
broadcast() set the success result but kept ui.busy=true and didn't render until
after awaiting wallet.scan(), so the 'Sign & broadcast' button spun for the whole
post-send rescan (slow under rate-limiting / on the Electrum backend) — looking
stuck even though the tx had already broadcast. Now it shows the success screen
the instant the broadcast resolves and refreshes balances in the background.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
| -rw-r--r-- | src/app.js | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -2768,7 +2768,10 @@ async function broadcast() { ui.sendResult = { txid }; ui.draft = null; ui.send = blankSend(); - await wallet.scan(); + ui.busy = false; + render(); // show success immediately — don't hold the + wallet.scan().catch(() => {}); // spinner up for the post-send rescan + return; } catch (e) { ui.sendError = t('broadcastFailed', { msg: e.message }); } |
