leather-io / extension

Leather browser extension
https://leather.io
MIT License
304 stars 142 forks source link

Update receive modal with more complete options per type #3307

Closed badonyx closed 1 year ago

badonyx commented 1 year ago
Screenshot 2023-02-27 at 10 26 58 AM

Primary concerns: Why do some of these have a QR button, some have a Copy button, and some both? Both options should be available for all types of address.

Secondary concerns: Why is the STX address duplicated, one without a QR? This has potential to increase rather than reduce confusion. (By the way, did you know that the 'T' in 'NFT' stands for 'Token'? FT and NFT are all "Tokens".)

A sensible iteration on this might simplify to 3 (or 2) options, with STX shown first (once), and Bitcoin addresses shown next. The Bitcoin address might be simplified to just taproot, since technically isn't any reason why inscribed and uninscribed sats need to be kept separate, assuming the wallet knows not to spend inscribed sats.

Furthermore, shouldn't legacy addresses still be supported for better compatibility? Legacy 1xyz/3xyz and native segwit bc1qxyz could all be hidden under some "advanced" option or something.

markmhendrickson commented 1 year ago

Primary concerns: Why do some of these have a QR button, some have a Copy button, and some both? Both options should be available for all types of address.

We've removed the copy option from Bitcoin so we can show a warning on the QR page re: not depositing ordinals. But I agree, we should find a way to put it back for convenience.

I also agree the QR code option should show for ordinals and Stacks NFTs.

Secondary concerns: Why is the STX address duplicated, one without a QR? This has potential to increase rather than reduce confusion. (By the way, did you know that the 'T' in 'NFT' stands for 'Token'? FT and NFT are all "Tokens".)

I imagine it could confuse, though we may have to see. The idea here is that the wallet now has two paths generally for FTs vs NFTs given the current intricacies of our ordinals support, so we wanted to bifurcate the experience. But as we build out feature parity for both, we could end up collapsing into one path again.

The Bitcoin address might be simplified to just taproot, since technically isn't any reason why inscribed and uninscribed sats need to be kept separate, assuming the wallet knows not to spend inscribed sats.

We may indeed want to do this once we have coin control in place for both Taproot and Native SegWit addresses. Right now if the user were to deposit inscriptions into the Native SegWit address, they could end up losing them upon sending BTC.

Furthermore, shouldn't legacy addresses still be supported for better compatibility?

We're assessing how much demand there is for legacy addresses and will add if it's significant.

badonyx commented 1 year ago

We're assessing how much demand there is for legacy addresses and will add if it's significant.

Miners and stackers need to use the legacy address but there is not currently a wallet that supports both the STX account and legacy BTC address. Furthermore, some stacking pools payout BTC to the legacy address. So this can be considered an important, if uncommon, utility for a Stacks wallet.

pete-watters commented 1 year ago

We have updated this to show more options and it will be available in the next release