fix: auto login inside imtoken browser
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
---
|
||||
title: "imToken in-app browser opens but does not log in — Quick Fix"
|
||||
type: quick-fix
|
||||
date: 2026-06-04
|
||||
---
|
||||
|
||||
# imToken in-app browser opens but does not log in — Quick Fix
|
||||
|
||||
## Bug
|
||||
|
||||
imToken can be opened from Chrome into its in-app browser, but the site does not complete wallet login.
|
||||
|
||||
## Root Cause
|
||||
|
||||
`AutoInjectedLogin` only started when the URL contained `?autoLogin=imToken`. imToken's deeplink/in-app-browser navigation can open the page while dropping or not preserving that query string, so the auto-login effect never ran even though the page was inside imToken and an injected provider was available.
|
||||
|
||||
## Fix
|
||||
|
||||
Added an imToken browser fallback: if no explicit `autoLogin` query parameter exists, but the current user agent is imToken, `AutoInjectedLogin` treats it as an imToken direct-login session and runs the same injected login path.
|
||||
|
||||
### Files Modified
|
||||
|
||||
- `src/wallet/AutoInjectedLogin.tsx` — starts imToken direct login based on imToken in-app-browser detection when the deeplink query is missing.
|
||||
- `src/wallet/injected.ts` — exports `isImTokenBrowser()` so the auto-login flow can reuse the imToken browser detection.
|
||||
|
||||
## Verification
|
||||
|
||||
- `npx tsc --noEmit`
|
||||
- `npm run format:check`
|
||||
- `npm test`
|
||||
|
||||
## Notes
|
||||
|
||||
This preserves the explicit `?autoLogin=` flow for TokenPocket and other wallets, while making imToken robust when the deeplink opens the page without the query parameter.
|
||||
Reference in New Issue
Block a user