From 6ea73cf4f8bad7384f8ead16a1aa6988ae46e545 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Tue, 8 Sep 2026 11:19:51 -0700 Subject: Add "Sign into another account" — switch identities without logging out. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The only way to move between identities (e.g. Adam via a Nostr remote signer and passkeyguy via passkey) was logout → forget all data → sign in again, which wipes every account. But the machinery to hold several accounts at once already exists: enterWallet/addOrGetAccount ADD an account (they don't replace), the unlock screen carries the sign-in doors (Nostr/passkey/Google via unlockExtra) plus a fromWallet Back button, activateAccount cleanly tears down and re-inits per-account nostr-login state, and the Accounts screen already switches between saved accounts. The nostr-login handoff even saves its session AFTER activating the new account, so each identity's signer state lands under its own namespace and resumes silently (persisted passkey sk / bunker session). The missing piece was a non-destructive entry point. Added a "Sign into another account" button on the Accounts screen that opens the unlock screen in additive mode (ui.fromWallet), so signing in adds the identity alongside the current one — then switching is just tapping a row on the Accounts screen (reached via the balance card's Accounts button), no logout, no data loss. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01MGzU12QrAA4G6BYGzGVdXz --- src/i18n.js | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/i18n.js') diff --git a/src/i18n.js b/src/i18n.js index 5b8cab6..2177385 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -43,6 +43,8 @@ const STR = { lockWallet: 'Lock wallet', accounts: 'Accounts', addWallet: 'Add account', + signInAnother: 'Sign into another account', + signInAnotherNote: 'Add a different identity (Nostr, passkey or Google) without signing out — switch between them here anytime.', clearAll: 'Delete all', logoutForget: 'Logout & forget all data', entropyToggle: 'Entropy', -- cgit v1.2.3