tomFlowee
dc48600ff4
Make Schnorr signing default.
2021-05-04 17:41:49 +02:00
tomFlowee
7ea2f634b7
Ensure internally consistent state on wallet-load.
2021-05-03 12:58:58 +02:00
tomFlowee
82b0c9bed4
Merge branch 'walletAmounts'
2021-05-03 12:43:13 +02:00
tomFlowee
1b5235a84b
Make loading work for user-locked outputs.
...
This generally makes the locking of outputs in our wallet much more sane
with some renames and fixes.
2021-05-03 12:42:44 +02:00
tomFlowee
b752103acc
Make receive pane work more sane
2021-04-21 17:48:08 +02:00
tomFlowee
f96a51eb89
Improve initial-wallet creation
2021-04-21 15:17:08 +02:00
tomFlowee
1d88637e06
Follow API fixes in flowee-libs
2021-04-19 15:52:50 +02:00
tomFlowee
73a83dac6b
Make unit tests more stable: don't pull in unit test
...
The wallet calls the singleton for notification purposes, lets simply
ifdef that out for unit tests.
2021-03-31 12:24:11 +02:00
tomFlowee
00d3248d05
Take suggestions from static analizer.
2021-02-05 17:47:17 +01:00
tomFlowee
fb598c8c8f
Add notification manager.
2021-02-05 16:56:02 +01:00
tomFlowee
b893d0b36a
Keep compatible with older Qt
...
Make sure we can compile on older platforms.
2021-02-01 22:03:10 +01:00
tomFlowee
0e34e308db
Add unit test for Wallet::findInputsFor()
2021-01-31 22:51:55 +01:00
tomFlowee
6c3366428b
Minor nits
2021-01-29 19:19:30 +01:00
tomFlowee
6e6ddb467e
When a tx gets confirmed, show this in our model.
2021-01-27 20:03:53 +01:00
tomFlowee
8e62c36b3b
Save various more properties of the PaymentRequest
2021-01-15 17:23:08 +01:00
tomFlowee
68b5fdc228
Working on paymentRequests.
...
Allow detected transactions to be seen by the PaymentRequest.
Allow PaymentRequests to be deleted.
2021-01-13 17:43:10 +01:00
tomFlowee
e6844fe1a7
Add payment requests overview
2021-01-07 20:10:09 +01:00
tomFlowee
5726849a91
Make remembering a payment request possible
...
Should a user want to move to other tasks they can store the payment
request backgrounding the processing of said incoming request.
2021-01-06 23:15:54 +01: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
062be17ff1
Show all outputs if we created the tx
2020-12-26 16:51:54 +01:00
tomFlowee
95000536f0
Cleanups and fixes
2020-12-25 23:27:14 +01:00
tomFlowee
30a5f3a255
Make display of tx-details look better.
2020-12-25 23:02:28 +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
abc9239fff
Avoid calling rebuildBloom twice.
...
Remove the one at the end of loading, it makes more sense to do it
in the constructor since the bloom is about both the private keys
as well as for the utxo
2020-11-07 15:25:38 +01:00
TomZ
cb2b147096
Split 'balance' into 3 variables.
...
* confirmed
* unconfirmed
* immature
2020-11-06 22:54:39 +01:00
TomZ
f5ca55b587
Educate the Wallet about coinbase maturity
...
Now we wait for coinbases to mature before we show them in balance and
before we use them in transactions.
2020-11-06 20:20:41 +01:00
TomZ
5e80cc3990
Fix TODO wrt locked
2020-11-06 18:41:12 +01:00
TomZ
0dbf1010af
Split the growing Wallet.cpp into multiple files.
2020-11-06 18:25:48 +01:00
TomZ
c8ae3817c5
Make sending transactions on startup work better.
...
We wait until the chain is synched and then we check for and broadcast
unconfirmed transactions.
This essentially means that every single block we receive will trigger
this code. In BCH I think that is just fine since all we really do is
send an INV.
2020-11-05 22:21:50 +01:00
TomZ
a59cf26c37
Avoid updating the height multiple times.
...
There are some listeners connected to this which may make it more
expensive than expected.
2020-11-05 22:18:32 +01:00
TomZ
5f4c8ed268
Fixlets
2020-11-05 22:16:26 +01:00
TomZ
fce7f1a955
Make wallet send all unconfirmed transactions again
...
We make sure to broadcast our transactions repeatedly if they are not
yet confirmed.
For instance if the last time we made it we were offline.
2020-11-04 22:00:34 +01:00
TomZ
781999d99d
Bugfixes
2020-11-04 18:59:24 +01:00
TomZ
f24a6e0f84
Implement replacing transaction
...
When a unconfirmed transaction gets made invalid by a mined one spending
the same output, this updates the wallet balance and UTXO state
properly.
2020-11-03 20:16:36 +01:00
TomZ
ae0c395d50
Make the wallet process mempool transactions
...
When a transaction is received by the p2pnet layer via a simple INV/
GetData we now process this and properly lock the outputs it spent to
avoid creating double spending transactions.
One task is left: properly recognize when a mined transaction
invalidates another transaction (like an unconfirmed one) and update the
datastructures.
2020-11-02 21:49:06 +01:00
TomZ
63902d2730
Add support for testnet addresses
2020-10-30 18:06:58 +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
19e941ce14
Show the sync-height of a wallet.
2020-10-17 17:34:40 +02:00
TomZ
2c8954eafa
Fix reorg-tx algo and add unit test for it.
...
The code to re-org all transactions in a block so transactions that
depend on others are processed after those they depend on had a silly
bug (missing line), fixed that but also made it unit-testable to
demonstrate the bug.
2020-10-17 16:38:37 +02:00
TomZ
1cb913c3e6
Make debugging the wallet easier.
2020-10-16 19:25:52 +02:00
TomZ
202ea2439a
Add way to create new wallets
...
Including the import of an existing private key.
2020-10-16 18:28:33 +02:00
TomZ
99f5b728f5
Re-create the send page
...
This brings back a new GUI for sending payments.
2020-10-15 19:18:54 +02:00
TomZ
bbf1daf155
fix typo
2020-06-13 19:27:12 +02:00
TomZ
d0bf8c63ee
Add wallet boolean
2020-06-13 11:04:34 +02:00
TomZ
35246ffbc3
Implement first steps of paying.
...
This provides code for creating the transaction, selecting the UTXOs and
signing the transaction.
Essentially everything except the handling of final tx (like sending it
to a peer).
2020-06-08 14:37:29 +02:00
TomZ
9e9d8b1a32
Factor low-level behaviour out to class
...
For maintainability the pair of tx-index/output-index are now stored in
a simple class.
Additionally the calls to the privacyFilter have been upgraded to follow
the API fix in Flowee the Hub.
2020-06-08 14:31:45 +02:00
TomZ
32a193acbd
Don't assume, flush!
2020-05-27 18:35:37 +02:00