-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Closed
Labels
this issue is prioritizedStory in develop or in releaseStory in develop or in releasetype-bugSomething isn't workingSomething isn't working
Description
Description
Currently in the Send flow, under the list of “recent addresses”, you see all the addresses that users have interacted with and that list is populated from the transaction history (TransactionController). This doesn’t match with user expectation, and could lead to users sending assets to addresses they didn’t intend to. We should not be using the transactions from the TransactionController.
Technical Details
- Store all sent TO addresses in a list under a new key in redux. Perhaps call it
recent-addresses. Ordered from most recent -> oldest - Replace
transactionsfromAddressListcomponent with address list fromrecent-addresses. - Depending on the model of a transaction coming from
TransactionController, you may want to model the items underrecent-addressesin a similar manner to reduce potential UI changes. The other option, for the sake of cleaning things up, would be to simplify the model. - Most likely, this feature will require a new action creator + selector in redux.
- Lastly, we'll want to limit the number of addresses to display. A reasonable number would be 20 or so. That means if the list gets too long, we can pop off the end and add new addresses to the front.
- May need to update unit tests
Acceptance Criteria
- Recent addresses should ONLY show addresses that users have sent to via the “Send” feature in the past (in the order: most recent “to address” top of the list).
- Ability to select from recent address list and populate the TO field.
- Confirm sending still works after selecting from address list.
References
- Related - Ticket (don't show swaps contract address in recent "Recents" #2822) & PR Don't render swap router address in recents #2823 (stop-gap solution)
Questions
- Does it make sense to have the ability to remove addresses from the list? For example: Have an X on the right.
@mobularay : out of scope for this issue and sprint.
Currently in the Send flow, under the list of “recent addresses”, you see all the addresses that users have interacted with and that list is populated from the transaction history. This doesn’t match with user expectation, and could lead to users sending assets to addresses they didn’t intend to.
### **Fix:**
In the ‘recent addresses’ list of Send flow, ONLY show the addresses that were previously added & sent to in the “recipient address field”.
### **QA paths to test:**
1. this should solve the issue where people are seeing Swaps contract address (and other contract addresses after interaction with sites) in the “recent addresses”
2. this should allow contract addresses if the user had intentionally sent to a contract addresses via the Send flow (e.g., to another contract account wallet, or even for wrapping ETH)
3. “Recent addresses” should ONLY show addresses that users have sent to via the “Send” feature in the past (in the order: most recent “to address” top of the list).
### **Acceptance criteria**
1. Store this information in a privacy respecting way
2. Minimize performance impact
3. No confusion-inducing UX impact
Related: Ticket (#2822) & PR https://github.com/MetaMask/metamask-mobile/pull/2823 (stop-gap solution) ```
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
this issue is prioritizedStory in develop or in releaseStory in develop or in releasetype-bugSomething isn't workingSomething isn't working