spesmilo / electrum

Electrum Bitcoin Wallet
https://electrum.org
MIT License
7.44k stars 3.09k forks source link

Qt pay-to-many (batching) with QR code scanning #4966

Open SomberNight opened 5 years ago

SomberNight commented 5 years ago

Imagine having multiple single address QR codes (are there even multi-address QR codes?) that you want to pay to in a single transaction. Clicking the "camera" icon in the Send tab Pay to field and scanning one will reset-and-set the field. It's not trivial to batch them into a single transaction.

https://github.com/spesmilo/electrum/blob/ccec45a5640bdc8161229753524fd468fd98f1a5/electrum/gui/qt/paytoedit.py#L45 https://github.com/spesmilo/electrum/blob/ccec45a5640bdc8161229753524fd468fd98f1a5/electrum/gui/qt/qrtextedit.py#L58-L72

Maybe at least if the cursor is directly after a new line, and the user scans a QR code, we could keep the previous lines of the text edit and append to the end?

Note that some QR codes contain amount info, others do not.

Note that there is also a "read file" button in the Pay to field, for which it might make more sense not to just append the contents but overwrite. However making the "camera" and "read file" buttons behave inconsistently is also not nice. :/

(note: RBF batching could be used to batch them -- hackish workaround. the user might as well scan them separately and copy paste them between text files)

ecdsa commented 5 years ago

I think the payto field should not be multiline by default, as it is the case now. I think it should be a QLineEdit, and be replaced by a multiline when the user activates paytomany. That would solve your issue too