From 191456dbda3086fac32c3ea3b3801ba4f242e26a Mon Sep 17 00:00:00 2001 From: abretonc7s <107169956+abretonc7s@users.noreply.github.com> Date: Wed, 17 Apr 2024 22:55:06 +0800 Subject: [PATCH] fix: invalid url on inapp-browser (#9284) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## **Description** Invalid url when using in-app browser. ## **Related issues** Fixes: https://github.com/MetaMask/metamask-mobile/issues/9259 ## **Manual testing steps** 1. Go to this page... 2. 3. ## **Screenshots/Recordings** ### **Before** ### **After** ## **Pre-merge author checklist** - [x] I’ve followed [MetaMask Coding Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md). - [x] I've completed the PR template to the best of my ability - [x] I’ve included tests if applicable - [x] I’ve documented my code using [JSDoc](https://jsdoc.app/) format if applicable - [x] I’ve applied the right labels on the PR (see [labeling guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)). Not required for external contributors. ## **Pre-merge reviewer checklist** - [ ] I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed). - [ ] I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots. --- .../Views/AccountConnect/AccountConnect.tsx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/components/Views/AccountConnect/AccountConnect.tsx b/app/components/Views/AccountConnect/AccountConnect.tsx index fa7b47a4da2..9bea2310084 100644 --- a/app/components/Views/AccountConnect/AccountConnect.tsx +++ b/app/components/Views/AccountConnect/AccountConnect.tsx @@ -172,6 +172,15 @@ const AccountConnect = (props: AccountConnectProps) => { ); const loadHostname = useCallback(async () => { + // walletconnect channelId format: 1713357238460272 + // sdk channelId format: uuid + // inappbrowser channelId format: app.uniswap.io + + // check if channelId contains dot, it comes from in-app browser and we can use it. + if (channelId.indexOf('.') !== -1) { + return origin; + } + if (sdkConnection) { const _hostname = ( sdkConnection?.originatorInfo?.url ?? metadataOrigin @@ -180,7 +189,7 @@ const AccountConnect = (props: AccountConnectProps) => { } return wc2Metadata?.url ?? channelId; - }, [channelId, metadataOrigin, sdkConnection, wc2Metadata]); + }, [channelId, metadataOrigin, sdkConnection, origin, wc2Metadata]); // Retrieve hostname info based on channelId useEffect(() => {