MetaMask / MetaMask/metamask-mobile
[Confirmations/Send] [UX] Improve Bottom Sheet and Keyboard Interaction for Sending SPL Tokens
- Dominant language
- TypeScript
- Stars
- 3k
- Forks
- 1.7k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 669
Description
## Issue Description:
When users send SPL tokens on MetaMask Mobile, there are significant UX concerns regarding the bottom sheet interaction and the native keyboard behavior:
### Current Issues:
* **Bottom sheet interaction**: The send flow utilizes a bottom sheet overlay rather than a full-screen page, creating an awkward stacking of multiple bottom sheets, particularly when selecting different sending accounts.
* **Keyboard inconsistencies**: The native keyboard implementation, while appreciated, currently feels inconsistent with other input methods throughout the app, causing confusion and friction in user experience.
### Expected Behavior:
* Clear and consistent navigation, ideally leveraging a dedicated full-page interface when sending SPL tokens.
* Uniform and predictable behavior with keyboard interactions that align with overall app patterns and user expectations.
### Steps to Reproduce:
1. Open MetaMask Mobile and navigate to send SPL tokens.
2. Observe bottom sheet behavior and the interactions when attempting to select different sending accounts.
3. Interact with the native keyboard and note inconsistencies compared to other app sections.
### Environment:
* MetaMask Mobile version: 7.52.0
* OS: iOS / Android (observed across multiple devices)
### Additional context:
Flagged during recent UAT session.
Contributor guide
Research direction
Start by reproducing the SPL token send flow on iOS and Android, focusing on the bottom-sheet stack during account selection and the native keyboard behavior. Compare both interactions with the app's existing patterns; done means the send flow provides clear navigation and consistent keyboard behavior across the reported devices.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, blockchain, ios, react-native, typescript
- Domain
- blockchain, design, mobile
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100