1
0
Commit Graph

88 Commits

Author SHA1 Message Date
Sander van Grieken
0bc8460005 qml: don't initialize instance variables on class scope for non-singletons
(this somehow escaped attention before, as most objects usually don't have multiple instances,
unless multiple wallets are open at the same time.)
Also, move all signal declarations, class constants and variables to the top of class definitions.
2023-01-12 13:09:21 +01:00
Sander van Grieken
281b9ddafb qml: don't create new QEAmount instances on query, re-use same instance 2023-01-09 12:31:07 +01:00
Sander van Grieken
becd46fbf6 qml: add show seed on WalletDetails.qml 2023-01-09 11:51:33 +01:00
ThomasV
e1dc7d1e6f Set the RBF flat to all transactions, and remove the 'use_rbf'
preference from the GUI, because the mempoolfullrbf option in
Bitcoin 0.24 makes RBF signaling pretty meaningless. Fixes #8088.

Note: RBF remains disabled for channel funding transactions.
In that case, the flag is actually only used as a semaphore
between different instances of the same wallet.
2022-12-10 18:58:15 +01:00
Sander van Grieken
969f84913e qml: keystore icon indicator for watch-only 2022-11-30 13:56:46 +01:00
Sander van Grieken
9354dfc86d qml: skip multisig_show_masterpubkey view and instead present master pub key on every
cosigner key/seed import page.
2022-11-28 17:42:29 +01:00
Sander van Grieken
1731c36234 qml: add lightning node id to walletdetails 2022-11-18 23:08:22 +01:00
Sander van Grieken
98e395e78e qml: show all keystores on WalletDetails page 2022-11-18 22:53:34 +01:00
Sander van Grieken
ad04ca84d8 qml: always try to generate an address for request regardless of bolt11_fallback config. 2022-11-18 18:32:43 +01:00
Sander van Grieken
495d8d6fae qml: add import channel backup 2022-11-16 16:50:23 +01:00
Sander van Grieken
57ec81cad0 qml: multisig implement finalize tx not complete result 2022-11-15 17:11:08 +01:00
Sander van Grieken
b7c31ad80e qml: move tx verified event handling to transactionlistmodel,
refresh history after broadcast
2022-11-15 15:33:21 +01:00
Sander van Grieken
97f02bca3b qml: add import additional addresses/keys to import wallet 2022-11-04 15:59:27 +01:00
Sander van Grieken
0c9d4abb82 qml: show 2FA status and billing info in WalletDetails, expose billing schedule setting in config 2022-11-04 13:35:15 +01:00
Sander van Grieken
e3b3f04afe qml: refresh address list on new transaction by setting dirty flag 2022-10-25 16:45:27 +02:00
Sander van Grieken
571c626eb4 qml: run tx broadcast in thread, re-enable broadcast button in TxDetails when broadcast fails
show notification when broadcast fails
2022-10-25 16:24:56 +02:00
ThomasV
d922db0bdf Merge pull request #7986 from accumulator/wizard
New approach to implement new wallet wizard
2022-10-24 13:29:42 +02:00
accumulator
6e536d2d91 add invoice status to invoice_status callback (#8020)
* add invoice status to invoice_status callback

* debug statement fails tests

* removed commented lines, added progress/attempt counter comment in lnworker.pay_to_node,
and update the invoice_status event handler in qeinvoicelistmodel.py
2022-10-21 16:45:12 +00:00
Sander van Grieken
6ea3a16cc8 add wallet type imported addresses/private keys to wizard 2022-10-21 13:32:16 +02:00
Sander van Grieken
acb88f21c1 implement success and failure paths, keep dialog over multiple tries 2022-10-21 13:32:16 +02:00
Sander van Grieken
20c95b26ea wip otp on pay 2022-10-21 13:32:13 +02:00
Sander van Grieken
e579f5b8a5 properly remember wallet password and pass to tx signing call 2022-10-21 13:31:24 +02:00
Sander van Grieken
43bac2edff qml: use new wizard approach in qml and also implement 2FA/trustedcoin 2022-10-21 13:31:24 +02:00
Sander van Grieken
3a8cfcd5b8 qml: add total balance, fix initialization of create recoverable channels setting 2022-10-17 17:24:46 +02:00
Sander van Grieken
5042d9971c qml: update history when LN payment arrives 2022-10-17 11:34:32 +02:00
Sander van Grieken
090706bfd6 qml: fix crashes on tx finalizing 2022-10-04 21:51:55 +02:00
Sander van Grieken
fd791f4fb1 qml: make request types clickable, some fixes 2022-09-30 09:27:55 +02:00
Sander van Grieken
fb68931a8d allow zero amount invoices, add edit amount option for invoices 2022-09-28 18:21:07 +02:00
Sander van Grieken
dd58328534 ui, fix payment failed 2022-09-28 18:21:07 +02:00
Sander van Grieken
d4df633f22 move request details into separate dialog 2022-09-28 18:21:07 +02:00
Sander van Grieken
32a81d8ee7 qml: initial plugin support, with labelsync mostly implemented 2022-09-08 12:19:38 +02:00
Sander van Grieken
291ca40c9e qml: fix missing param in userNotify 2022-08-27 13:41:59 +02:00
Sander van Grieken
f05ff0c9b8 qml: add QERequestDetails component.
Auto binds to wallet request status update signal so qml doesn't have to.
implements timer to update status string when near expiry.
2022-08-23 17:13:22 +02:00
Sander van Grieken
742012aee3 qml: add initial sign and broadcast feature to TxDetails/qetxdetails 2022-08-16 16:09:09 +02:00
SomberNight
7b095158bf wallet: add get_label_for_address, and make get_label private
fixes https://github.com/spesmilo/electrum/issues/7919

In the past, when creating payment requests, we keyed them by on-chain address,
and set/saved the msg of the request as label for the address.
Many places in the code were calling wallet.get_label(addr) with the expectation that
relevant payment requests are found and their message/description (if any) is considered.

wallet.get_label(key) is now made private, and instead the explicit non-polymorphic
wallet.get_label_for_{address,rhash,txid} alternatives should be used.
2022-08-09 17:21:14 +02:00
Sander van Grieken
5008cef491 qml: optimize imports 2022-07-28 16:53:05 +02:00
Sander van Grieken
623de58b7b qml: network status improvements
create NetworkStatusIndicator component
add forks/chaintips and lagging property to qenetwork
add synchronizing and synchronizing progress properties to qewallet
Note: new wallet synchronizing is not picked up in UI yet, missing
an is_up_to_date event at the start still..
2022-07-21 19:46:12 +02:00
Sander van Grieken
894495aa92 qml: clean up 2022-07-12 19:07:19 +02:00
Sander van Grieken
70cf44ccec qml: wip single password 2022-07-12 16:55:11 +02:00
ThomasV
9ae0e5bffc remove lightning parameter from wallet.create_request 2022-07-11 13:52:13 +02:00
SomberNight
bcbe69672e qml gui: fix flake8 "F821 undefined name" errors 2022-07-09 03:49:45 +02:00
Sander van Grieken
2c92174ee0 qewallet: fix useNotify signal emit 2022-07-08 16:27:18 +02:00
Sander van Grieken
0228169852 refactor to new event listener framework 2022-07-08 11:09:08 +02:00
Sander van Grieken
cd6d5e577b add unified wallet password support 2022-07-07 18:30:20 +02:00
Sander van Grieken
982639919d make sure historymodel is initialized 2022-07-07 18:29:21 +02:00
Sander van Grieken
b2fafcb428 add initial submarine swap functionality 2022-07-07 18:29:02 +02:00
Sander van Grieken
c79651f981 also unregister callbacks from qewallet and qechannellistmodel on destroy 2022-07-07 18:29:02 +02:00
Sander van Grieken
9243f3b896 implement wallet password change.
implement wallet delete (though actual wallet file delete is left out still)
2022-07-07 18:29:01 +02:00
Sander van Grieken
e9a174711b UI on Wallets screen. Add active/not active/current indicator tags.
initial wallet delete/change password boilerplate
2022-07-07 18:29:01 +02:00
Sander van Grieken
7cb8c347b5 Add @auth_protect decorator.
This guards function calls by storing the function, args and kwargs into
an added attribute '__auth_fcall' on the object using the decorator,
then emits a signal that can be handled by the UI.

The UI can signal auth-success or auth-failure back to the object by
calling either the authProceed() slot or the authCancel slot.

The object utilizing this decorator MUST inherit/mixin the AuthMixin
class, which provides the above two slots, and handling of state.

The decorator also accepts a 'reject' parameter, containing the name of
a parameterless function on the object, which is called when
authentication has failed/is cancelled.
2022-07-07 18:29:01 +02:00