diff --git a/src/main.ts b/src/main.ts index 5b01776..98b9bfa 100644 --- a/src/main.ts +++ b/src/main.ts @@ -127,7 +127,9 @@ async function refreshStatus() { })); } - return setStatus(normalizeStatus(result.stdout, cachedStatus)); + const status = normalizeStatus(result.stdout, cachedStatus); + if (status.state === "disconnected" && cachedStatus.state === "connecting") return; + setStatus(status); } async function connect() { diff --git a/src/renderer.ts b/src/renderer.ts index 6041888..50500d2 100644 --- a/src/renderer.ts +++ b/src/renderer.ts @@ -68,11 +68,10 @@ function setStatus(status: UIStatus): void { } orb.addEventListener('click', async () => { - if (currentStatus.state === 'connected') { + if (['connected', 'connecting'].includes(currentStatus.state ?? '')) { await window.vynte.disconnect(); } else if ( ![ - 'connecting', 'disconnecting', 'loggingOut', 'checking',