MetaMask / MetaMask/metamask-extension
[Bug]: Pending Transactions - Popup is closed and re-opened if I confirm a transaction while having a non-EVM transaction pending
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 13.2k
- Forks
- 5.6k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 451
Description
### Describe the bug
Whenever I have a pending non-EVM transaction coming from a dapp in the MM popup, if I trigger an EVM transaction and Confirm that, the MM popup is automatically fully closed and then re-opened with the non-EVM transaction
### Expected behavior
We should not close and re-open the popup, rather keep the popup open, in the same way it happens if we Reject the EVM transaction instead of confirming it.
### Screenshots/Recordings
https://github.com/user-attachments/assets/cb9421ae-3ada-48c5-b52c-3fc83cf2fcd0
### Steps to reproduce
1. Go to solana test dapp https://metamask.github.io/test-dapp-solana/latest/
2. Connect
3. Trigger a Transfer SOL and see the MM popup open
4. Without confirming or rejecting, go to the test dapp
5. Trigger a regular Send/Transaction
6. Navigate to that transaction in the popup
7. Confirm the EVM transaction
8. See how the popup is fully closed and then re-opened with the non EVM transaction
### Error messages or log output
```shell
```
### Where was this bug found?
Internal release testing
### Version
Found in 13.29.0 but possibly already in prod
### Build type
None
### Browser
Chrome
### Operating system
MacOS
### Hardware wallet
_No response_
### Additional context
_No response_
### Severity
_No response_
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the flow with the Solana test dapp and a regular EVM transaction in the MetaMask popup, then trace the popup lifecycle when the EVM transaction is confirmed. The issue names no source files or tests; done means confirming the EVM transaction leaves the popup open with the pending non-EVM transaction, as rejection already does.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- blockchain, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100