diff --git a/src/components/DeleteMnemonicDialog.js b/src/components/DeleteMnemonicDialog.js index 6f17c93..daf7cd7 100644 --- a/src/components/DeleteMnemonicDialog.js +++ b/src/components/DeleteMnemonicDialog.js @@ -20,7 +20,7 @@ export default function DeleteMnemonicDialog({ open, onClose }) { }} fullWidth > - Delete Mnemonic + {'Log Out & Delete Mnemonic'}
- Delete Mnemonic + {'Log Out & Delete Mnemonic'} diff --git a/src/pages/PopupPage.js b/src/pages/PopupPage.js index 452166d..ac5f671 100644 --- a/src/pages/PopupPage.js +++ b/src/pages/PopupPage.js @@ -44,6 +44,7 @@ export default function PopupPage({ opener }) { return params.get('origin'); }, []); const selectedWallet = useWallet(); + const selectedWalletAddress = selectedWallet && selectedWallet.publicKey.toBase58(); const { accounts, setWalletSelector } = useWalletSelector(); const [wallet, setWallet] = useState(isExtension ? null : selectedWallet); @@ -65,21 +66,13 @@ export default function PopupPage({ opener }) { [opener, origin], ); - // Hack to keep selectedWallet and wallet in sync. TODO: remove this block. + // Keep selectedWallet and wallet in sync. useEffect(() => { if (!isExtension) { - if (!wallet) { - setWallet(selectedWallet); - } else if (!wallet.publicKey.equals(selectedWallet.publicKey)) { - setWallet(selectedWallet); - } + setWallet(selectedWallet); } - }, [ - wallet, - wallet.publicKey, - selectedWallet, - selectedWallet.publicKey, - ]); + }, [selectedWalletAddress]); + // (Extension only) Fetch connected wallet for site from local storage. useEffect(() => { @@ -102,7 +95,7 @@ export default function PopupPage({ opener }) { if (isExtension && connectedAccount) { setWallet(selectedWallet); } - }, [connectedAccount, selectedWallet]); + }, [connectedAccount, selectedWalletAddress]); // Send a disconnect event if this window is closed, this component is // unmounted, or setConnectedAccount(null) is called. @@ -122,6 +115,7 @@ export default function PopupPage({ opener }) { // Disconnect if the user switches to a different wallet. useEffect(() => { if ( + !isExtension && wallet && connectedAccount && !connectedAccount.equals(wallet.publicKey) @@ -152,7 +146,6 @@ export default function PopupPage({ opener }) { const request = requests[0]; const popRequest = () => setRequests((requests) => requests.slice(1)); - // TODO TEST ON SOLLET.IO VERSION const { messages, messageDisplay } = useMemo(() => { if (!request || request.method === 'connect') { return { messages: [], messageDisplay: 'tx' } @@ -277,7 +270,6 @@ export default function PopupPage({ opener }) { } async function sendAllSignatures(messages) { - console.log('wallet', wallet); let signatures; // Ledger must sign one by one. if (wallet.type === 'ledger') {