From 6d349f434b434b7aca8b76fcee5a928ba399b5ee Mon Sep 17 00:00:00 2001 From: apoorvlathey Date: Mon, 12 Jun 2023 00:08:12 +0530 Subject: [PATCH] WalletConnect: auto-approve request on paste --- .../Body/WalletConnectTab/URIInput.tsx | 24 ++++++++++++++++++- .../Body/WalletConnectTab/index.tsx | 10 ++++++-- 2 files changed, 31 insertions(+), 3 deletions(-) diff --git a/src/components/Body/WalletConnectTab/URIInput.tsx b/src/components/Body/WalletConnectTab/URIInput.tsx index 8c9eb3a..14c7f21 100644 --- a/src/components/Body/WalletConnectTab/URIInput.tsx +++ b/src/components/Body/WalletConnectTab/URIInput.tsx @@ -1,3 +1,4 @@ +import { useState, useEffect } from "react"; import { FormControl, HStack, @@ -14,9 +15,25 @@ interface URIInputParams { setUri: (value: string) => void; bg: string; isConnected: boolean; + initWalletConnect: () => void; } -function URIInput({ uri, setUri, bg, isConnected }: URIInputParams) { +function URIInput({ + uri, + setUri, + bg, + isConnected, + initWalletConnect, +}: URIInputParams) { + const [pasted, setPasted] = useState(false); + + useEffect(() => { + if (pasted) { + initWalletConnect(); + setPasted(false); + } + }, [uri]); + return ( @@ -46,6 +63,11 @@ function URIInput({ uri, setUri, bg, isConnected }: URIInputParams) { autoComplete="off" value={uri} onChange={(e) => setUri(e.target.value)} + onPaste={(e) => { + e.preventDefault(); + setPasted(true); + setUri(e.clipboardData.getData("text")); + }} bg={bg} isDisabled={isConnected} /> diff --git a/src/components/Body/WalletConnectTab/index.tsx b/src/components/Body/WalletConnectTab/index.tsx index 2c34886..ce07826 100644 --- a/src/components/Body/WalletConnectTab/index.tsx +++ b/src/components/Body/WalletConnectTab/index.tsx @@ -35,9 +35,15 @@ function WalletConnectTab({ }: WalletConnectTabParams) { return ( <> - +
-