From 445a2e772eba5377f74a1b68fe7f80508c05fa9c Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 26 Jun 2026 13:43:38 -0700 Subject: Don't hold the send spinner up during the post-broadcast rescan MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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) --- src/app.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/app.js b/src/app.js index f812184..d5452ec 100644 --- a/src/app.js +++ b/src/app.js @@ -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 }); } -- cgit v1.2.3