Commit Graph

545 Commits

Author SHA1 Message Date
tomFlowee 1262733154 Make bip21 payment request minimal functional 2021-01-06 15:26:46 +01:00
tomFlowee e1708ff656 UX: interaction improvements
Fix focus sometimes not moving on click, and set an appropriate cursor
on hover.
2021-01-06 15:07:01 +01:00
tomFlowee 20690a24ce Update email 2021-01-05 14:04:10 +01:00
tomFlowee c075a80a9b Make a valiant effort to start PaymentRequests 2021-01-05 00:25:23 +01:00
tomFlowee 4c522d8789 When swiping a paper key, mark wallet as single-address.
This means that we don't send funds to another address by default.
2020-12-26 19:35:54 +01:00
tomFlowee 4ea8ebefec Fix preview window showing 'max' properly. 2020-12-26 19:31:59 +01:00
tomFlowee 062be17ff1 Show all outputs if we created the tx 2020-12-26 16:51:54 +01:00
tomFlowee ba7b3b78bd Update logo and set it as window icon. 2020-12-26 15:30:52 +01:00
tomFlowee 83743c4aaa Use amount labels for account details. 2020-12-26 15:30:29 +01:00
tomFlowee 8125313ed7 Make unit indicate chain.
This makes sure that we have 'tBCH' for the test chain to avoid
confusion.
2020-12-26 15:03:02 +01:00
tomFlowee 8d2840f9a9 Use expected height to indicate if wallet is behind
This helps give instant feedback before we connected to good peers.
2020-12-26 14:54:41 +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 2a2a86c2da Iterate over references. 2020-12-25 15:40:41 +01:00
tomFlowee 2a53c005d9 Create a defaults.ini and set the useragent in there 2020-12-25 15:40:21 +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 d4df416f32 Hide fiat display for non-main chains 2020.07.1 2020-11-17 22:11:11 +01:00
TomZ 4e4bc0a962 Handle more signals 2020-11-17 22:10:57 +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 fb07747ad9 Make SyncIndicator more reusable
This moves the 'visible' decision to the account page.
2020-11-05 17:59:48 +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 f63d2dafa8 Cleanup old files
These QML files were from my first quick&dirty UI, now all functionality
has been replaced with better ones.
2020-11-04 18:58:34 +01:00
TomZ 9371a085b3 Add account info dialog
Reachable from the 'dotdotdot' menu on the account page.
2020-11-04 18:33:50 +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 875717c760 Make future proof; use a lambda. 2020-10-30 09:42:55 +01:00
TomZ 31304be4b1 Add support for testnet4 2020-10-29 21:51:52 +01:00
TomZ e9df4c6e06 Hide the config dots until they do something 2020-10-29 21:51:19 +01:00
TomZ c3c70b266a Fix bug, now we show how far we are behind. 2020-10-24 17:09:10 +02:00
TomZ 4c01f8231c minor tweak. 2020-10-24 14:52:14 +02:00
TomZ a6f458a42b Forgot to uncomment... 2020-10-24 14:50:47 +02:00
TomZ 4ab3f0c7df Make 'max' button work in a sane manner. 2020-10-24 14:50:04 +02:00
TomZ 0f1138a80f Merge branch 'master' of banana:floweepay 2020-10-24 12:50:55 +02:00
TomZ 8dcaf9e668 [UX] fix font-size 2020-10-24 12:50:18 +02: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 60a6bb5af0 update README 2020-10-23 20:41:18 +02:00
TomZ ca9845ae4f Handle user trying to send more than we have. 2020-10-23 20:20:42 +02:00
TomZ 96121c7081 Fixes in the UX 2020-10-23 19:45:21 +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 42ea3e5bb7 UX show how far in time an account is behind 2020-10-19 17:59:04 +02:00
TomZ b92a4a2393 Make sure only one wallet has 'first' prio
This allows us to use it as the favourite wallet we open on startup.
2020-10-19 16:50:36 +02:00