Commit Graph

38 Commits

Author SHA1 Message Date
tomFlowee 58c699796d Make sure 'max' is updated on wallet-change. 2021-12-09 18:59:19 +01:00
tomFlowee 6e43261ab0 Move formatted address feedback inside entry widget.
Also move the QML-level bool to live in the model.
2021-12-09 18:59:19 +01:00
tomFlowee fb4a92aa34 On reinsert of coin-selector, uncollapsed it. 2021-12-04 18:35:06 +01:00
tomFlowee 4c86b106c0 Allow the details list to be empty. 2021-12-04 17:49:55 +01:00
tomFlowee 5c1a8dddce Simplify string 2021-12-04 14:28:51 +01:00
tomFlowee a7a7618ae3 Be consistent on using wallet for UI 2021-12-04 14:15:30 +01:00
tomFlowee c90ea75482 Improve detection of sent-state 2021-12-04 13:58:46 +01:00
tomFlowee 231c40b4c9 Cleanup fix
Seems I forgot to remove the old code after writing new.
2021-12-01 16:42:31 +01:00
tomFlowee 9fa92223e6 Make payment feedback work on the testnet defaults.
Testnet is sparse (and value-less), so we have no more than 1 peer per
wallet. To make sure out feedback still works properly this special-
cases other chains.
2021-11-30 14:34:41 +01:00
tomFlowee 820a2673dc Make sure we update the validity 2021-11-30 14:02:41 +01:00
tomFlowee 17935cc983 Make sure we do not create too big transactions. 2021-11-30 10:35:34 +01:00
tomFlowee d1e44fa515 Make an initial version of send-tx feedback. 2021-11-29 23:17:45 +01:00
tomFlowee 632483a06f Rename private API headers 2021-11-24 16:00:40 +01:00
tomFlowee e7553daae9 Use inputselector for building a tx.
This makes the backend systems actually take into account the payment
details like outputs and input-selector in order to build a transaction.
2021-11-24 15:46:13 +01:00
tomFlowee 44653c5102 Fix many user interaction details. 2021-11-24 14:56:52 +01:00
tomFlowee 88955b7f7b Split Payment.{cpp|h} into different files. 2021-11-23 22:46:28 +01:00
tomFlowee e8c96d7c23 Add selection of inputs and make the UI pretty. 2021-11-23 17:17:40 +01:00
tomFlowee a8034161bd Group outputs together in the payment. 2021-11-23 11:22:04 +01:00
tomFlowee 9a2fe0444c Add most of WalletCoinsModel content. 2021-11-23 11:22:01 +01:00
tomFlowee 381c475bb4 Start with coin-selector 2021-11-19 11:20:01 +01:00
tomFlowee 2a2954c57b Move most of the payment complexity into cpp
This moves all the checks and UI interactions into the model, making the
QML much lighter and less error-probe.

At the same time this allows us to add new UX features like when a 'max'
button is pressed it live-updates the amounts in the fiat and bch fields
as the user changes any spending in other outputs.
2021-11-18 14:25:47 +01:00
tomFlowee 4bac1d7e10 Allow adding/deletion of payment details 2021-11-17 14:24:19 +01:00
tomFlowee 3ca6b667f8 Make the SendTransactionPane mostly functional again.
This is against the new Payment object design.
2021-11-16 19:14:45 +01:00
tomFlowee 71229f8f86 Re-imagine the payment workflow
This changes the way the UI is going to have to use the payment object
and therefore this breaks the send transaction GUI.
2021-11-16 11:47:33 +01:00
tomFlowee 818ddbe6c6 Start payment details model
To allow the UI to modify the payment we split it into details. A detail
is, for instance, an output. This allows the user to add multiple
outputs in one payment, and thus one transaction.

Further payment details can be an input selection (to select exactly
which coins need to be spent) and others may be added later.
2021-11-15 16:08:48 +01:00
tomFlowee 7079b2c4a4 Make HD wallets put change on change addresses. 2021-11-09 10:37:31 +01:00
tomFlowee 351283e6bf Fix typo in methodname. 2021-11-08 15:21:53 +01:00
tomFlowee 81abfaa45d Adjust heuristics to come up with better transaction 2021-11-04 22:42:14 +01:00
tomFlowee f26f0f88f0 Allow sending to P2SH addresses. 2021-07-26 15:07:38 +02:00
tomFlowee dc48600ff4 Make Schnorr signing default. 2021-05-04 17:41:49 +02:00
tomFlowee 1262733154 Make bip21 payment request minimal functional 2021-01-06 15:26:46 +01:00
tomFlowee 20690a24ce Update email 2021-01-05 14:04:10 +01:00
tomFlowee 3b20226fce Expose details of a transaction for QML
For each transaction allow to click on it and show lots of further
details about it.

This also fixes various bugs and adds some basic helper methods in
various places.

The QML is barely functional, getting the right data exposed was the
only goal today.
2020-12-17 23:12:39 +01:00
TomZ 781999d99d Bugfixes 2020-11-04 18:59:24 +01:00
TomZ 005c241344 Make backend able to accept a 'max' payment
The idea is that the user can empty out a wallet using the 'max' button.
2020-10-23 22:34:34 +02:00
TomZ ca9845ae4f Handle user trying to send more than we have. 2020-10-23 20:20:42 +02:00
TomZ 0cd48d8809 Version 2 of UTXO selection algo
This avoids the far to CPU intensive perfect solution and instead does a
best effort comparisn between various semi-random selections of inputs.
2020-10-23 19:45:08 +02:00
TomZ 14cb4fa603 Start making this nice
* split the AccountInfo and Payment classes out into their own files.
* Start a 'color' file to switch between light and dark-theme.
* Start a new main GUI which isn't so hacky and ugly.
* Make this actually a desktop app, with menu and file->quit!
2020-10-14 17:02:45 +02:00