diff --git a/apps/desktop/electrobun.config.ts b/apps/desktop/electrobun.config.ts index 7d2f865..20dc25e 100644 --- a/apps/desktop/electrobun.config.ts +++ b/apps/desktop/electrobun.config.ts @@ -4,7 +4,7 @@ export default { app: { name: 'koins', identifier: 'koins.tzgyn.com', - version: '0.0.5', + version: '0.0.6', }, build: { // Vite builds to dist/, we copy from there diff --git a/apps/desktop/src/lib/states/monero-wallet.svelte.ts b/apps/desktop/src/lib/states/monero-wallet.svelte.ts index 798572b..1e45025 100644 --- a/apps/desktop/src/lib/states/monero-wallet.svelte.ts +++ b/apps/desktop/src/lib/states/monero-wallet.svelte.ts @@ -101,6 +101,11 @@ export const MoneroWallet = () => { if (installed && !running) { await start() await checkStatus() + } else if (startInFlight) { + // a start is already in flight (e.g. triggered by init); + // wait for it so we don't call open before the server is up + await startInFlight.catch(() => {}) + await checkStatus() } if (!running) { error = 'Wallet server failed to start. Please try again.' diff --git a/apps/desktop/src/routes/index.svelte b/apps/desktop/src/routes/index.svelte index 6d8c5b8..2adbe54 100644 --- a/apps/desktop/src/routes/index.svelte +++ b/apps/desktop/src/routes/index.svelte @@ -127,20 +127,6 @@ } }) - // Self-heal: if the monero wallet list never got loaded (e.g. the server - // was starting while the dashboard rendered), retry login once. - $effect(() => { - if ( - moneroWallet.ready && - !moneroWallet.walletOpen && - !moneroWallet.opening && - moneroWallet.wallets.length === 0 && - !moneroWallet.error - ) { - void moneroWallet.login() - } - }) - $effect(() => { if (moneroWallet.walletOpen) { fetchXmr()