Commit graph

609 commits

Author SHA1 Message Date
SomberNight
aa518c0ea5
psbt: allow insecure signing of legacy UTXOs without full previous tx
When "importing" a psbt, we accept witness utxos even for legacy inputs
(warning shown to user in gui).
When "exporting" a psbt, we follow the spec; except when exporting as a QR code,
in which case we include witness utxos for all inputs.
This makes QR codes for psbts with legacy inputs feasible, just like they
were before, with our custom tx serialization format (with the same risk,
of burning coins as miner fees).
2019-11-07 02:40:10 +01:00
SomberNight
c8c1ea9c86
qt tx dialog: add export options for coinjoins and for coldcard 2019-11-04 22:25:06 +01:00
SomberNight
d872be7f6b
psbt: don't put xpubs and full paths into tx by def; only while signing 2019-11-04 22:25:02 +01:00
SomberNight
7eb7eb8674
add support for manual coinjoins 2019-11-04 22:24:55 +01:00
SomberNight
bafe8a2fff
integrate PSBT support natively. WIP 2019-11-04 22:24:36 +01:00
ghost43
6d12ebabbb
qt tx dialog: show dropdown for "export", instead of separate buttons (#5739) 2019-11-04 16:24:55 +00:00
SomberNight
3e98123b17
qt settings dialog: small fixes 2019-11-02 06:13:11 +01:00
SomberNight
3bfcfb49c3
fix qt invoices list: handle lightning disabled
closes #5738
2019-11-02 03:44:22 +01:00
SomberNight
a20317fe2a
fix #5726 2019-10-28 21:17:20 +01:00
ThomasV
2dd368e76e minor fix: show_transaction params 2019-10-24 18:45:51 +02:00
ThomasV
5c1340b7bd pass both invoice and description to show_transaction 2019-10-24 17:27:14 +02:00
ThomasV
76c22f3e06 follow-up a0ec2690cf 2019-10-24 16:27:54 +02:00
ThomasV
a0ec2690cf Call wallet.set_paid after onchain broadcast. Check if invoices are expired in util.get_request_status 2019-10-23 17:33:46 +02:00
ThomasV
aac0fe9ae6 kivy: show status with color. show inflight attempts. 2019-10-22 15:41:45 +02:00
ThomasV
6992e33ecb folllow-up c721e880d0 2019-10-16 16:04:17 +02:00
ThomasV
c721e880d0 Qt: generic add_copy_menu method for MyTreeView lists 2019-10-16 15:50:18 +02:00
ThomasV
0a6ac7c61a fix #5702 2019-10-16 12:01:52 +02:00
ThomasV
d1f4804962 misc Qt fixes
- improve layout of send tab
 - use tabs to show receive widgets
 - add menu item to copy address from request
 - show copied content in copy dialog
2019-10-16 11:46:23 +02:00
ThomasV
d35791ff65 fix #5704 2019-10-16 11:35:50 +02:00
ThomasV
8c22be87b0 fix #5701 2019-10-16 11:13:44 +02:00
fiatjaf
b476681af7 fix typo: wallet.requests -> wallet.receive_requests (#5706) 2019-10-15 13:22:05 +00:00
ThomasV
3af7920b63 fix typo 2019-10-14 12:02:04 +02:00
ThomasV
a13cea6f8a add remove_lightning command 2019-10-14 11:18:57 +02:00
ThomasV
90ce9f195b Allow user to enable lightning in the GUI. Make it a per-wallet setting. 2019-10-13 20:34:38 +02:00
ThomasV
a201ed44df Qt: add lightning button to status bar 2019-10-12 19:27:14 +02:00
ThomasV
0966edc637 fine-grained callbacks for lightning network dialog 2019-10-12 19:15:51 +02:00
ThomasV
fe550c6c73 payment log: show whether channel have been blacklisted 2019-10-12 18:36:25 +02:00
ThomasV
af4a3328f7 Qt: separate lightning and watchtower dialogs 2019-10-12 14:30:52 +02:00
ThomasV
f985c53f2f fix #5695 2019-10-12 14:05:17 +02:00
ThomasV
16644ae00f follow-up previous commit 2019-10-12 13:57:54 +02:00
ThomasV
8f86a15f92 improve payment log dialog 2019-10-12 13:47:10 +02:00
ThomasV
dd0be1541e Improve handling of lightning payment status:
- Move 'handle_error_code_from_failed_htlc' to channel_db,
and call it from pay_to_route, because it should not be
called when HTLCs are forwarded.
- Replace 'payment_received' and 'payment_status'
callbacks with 'invoice_status' and 'request_status'.
- Show payment error logs in the Qt GUI
- In the invoices list, show paid invoices for which
we still have the log.
2019-10-11 17:51:33 +02:00
ThomasV
0dc90491b2 do not decode LN invoices in channel_details. fixes #5676 2019-10-05 19:26:26 +02:00
SomberNight
8dabdf8bfb
qt send tab: handle invalid ln invoice; and ln invoice with ln disabled
fixes #5639
fixes #5662
2019-10-01 19:15:26 +02:00
SomberNight
04edad9984
config: no longer singleton. it is passed to Wallet.__init__
The few other cases that used SimpleConfig.get_instance() now
either get passed a config instance, or they try to get a reference
to something else that has a reference to a config.
(see lnsweep, qt/qrcodewidget, qt/qrtextedit)
2019-09-22 20:46:01 +02:00
ThomasV
a35421ab71 qt settings: create services tab for both watchtower and payserver 2019-09-22 17:12:48 +02:00
ThomasV
f08e5541ae Refactor invoices in lnworker.
- use InvoiceInfo (NamedTuple) for normal operations,
   because lndecode operations can be very slow.
 - all invoices/requests are stored in wallet
 - invoice expiration detection is performed in wallet
 - CLI commands: list_invoices, add_request, add_lightning_request
 - revert 0062c6d695 because it forbids self-payments
2019-09-22 16:06:53 +02:00
SomberNight
0a395fefbc
qt send tab: use monospace font in "from" UTXO-selection section 2019-09-22 06:20:57 +02:00
SomberNight
cbc3e13e28
qt: fix export history 2019-09-21 18:56:13 +02:00
SomberNight
6a32187f01
qt: fix address dialog
(was showing full history, not just for addr)
2019-09-21 18:48:44 +02:00
ThomasV
6c055e80ed qt: show_info -> show_error 2019-09-19 12:01:23 +02:00
ThomasV
46346eacd7 settings: add vbox with stretch 2019-09-19 10:02:25 +02:00
ThomasV
d1a70bf1df settings: move block explorer to 'Transactions' tab 2019-09-19 09:11:46 +02:00
Peter D. Gray
4baab751a4
Add multisig support for Coldcard plugin
-----

Squashed commit of the following:

commit 69c0d48108314db6f0e100bea2ce5a9a3a0e9a1f
Author: Peter D. Gray <peter@conalgo.com>
Date:   Fri Aug 2 14:51:33 2019 -0400

    deterministic-build/requirements-hw.txt: update to version 0.7.9 of ckcc-protocol for Coldcard

commit 5cd2c528698dfb4ad248844be3c741c25aa33e38
Merge: 5e2a36a3e 537b35586
Author: Peter D. Gray <peter@conalgo.com>
Date:   Fri Aug 2 14:41:59 2019 -0400

    Merge branch 'multisig' of github.com:Coldcard/electrum into multisig

commit 5e2a36a3ee28780a11f789f69896e6e795621bfc
Author: Peter D. Gray <peter@conalgo.com>
Date:   Fri Aug 2 14:41:49 2019 -0400

    Some fixes for p2wsh-p2sh and p2wsh cases

commit 537b35586e0b1e11622a8e7d718b6fd37d47f952
Merge: a9e3ca47e 2a80f6a3a
Author: nvk <rodolfo@rnvk.org>
Date:   Tue Jul 23 11:40:39 2019 -0400

    Merge branch 'master' into multisig

commit a9e3ca47e189bcf0556703a4f2ca0c084638eb73
Author: Peter D. Gray <peter@conalgo.com>
Date:   Mon Jun 24 13:36:41 2019 -0400

    Bugfix: not all keystores have labels

commit 57783ec158af5ca8d63d596638bc3b6ee63b053f
Author: Peter D. Gray <peter@conalgo.com>
Date:   Mon Jun 24 13:36:04 2019 -0400

    Add address format to export data, and bugfix: use xfp_for_keystore()

commit 6f1f7673eaa340d14497b11c2453f03a73b38850
Author: Peter D. Gray <peter@conalgo.com>
Date:   Fri Jun 21 09:06:49 2019 -0400

    Revert "bugfix: P2SH inputs can be signed with extra signatures, more than required"

    This reverts commit 75b6b663eca9e7b5edc9a463f7acd8f1c0f0a61a.

commit c322fb6dd2783e1103f5bf69ce60a365fbaf4bfe
Author: Peter D. Gray <peter@conalgo.com>
Date:   Thu Jun 20 12:57:19 2019 -0400

    Require latest CKCC protocol

commit 69a5b781ebc182851d2e25319b549ec58ea23eb1
Author: Peter D. Gray <peter@conalgo.com>
Date:   Thu Jun 20 12:40:27 2019 -0400

    gui/qt/main_window.py: add co-signer keystore label to wallet info display, and a hook for different buttons

commit 55d506d264dbb341602630c3429134e493995272
Author: Peter D. Gray <peter@conalgo.com>
Date:   Thu Jun 20 12:36:10 2019 -0400

    PSBT Combining/cleanup

commit 75b6b663eca9e7b5edc9a463f7acd8f1c0f0a61a
Author: Peter D. Gray <peter@conalgo.com>
Date:   Thu Jun 20 10:18:02 2019 -0400

    bugfix: P2SH inputs can be signed with extra signatures, more than required

commit 1bde362ddbbfd86520a7cb7bc51e0bcef06be078
Author: Peter D. Gray <peter@conalgo.com>
Date:   Wed Jun 19 09:47:26 2019 -0400

    Combines signed PSBT files

commit cc5c0532e52fbe282e862e20c250cc88ed435cad
Author: Peter D. Gray <peter@conalgo.com>
Date:   Fri Jun 14 13:04:32 2019 -0400

    Working towards multisig

commit cb20da5428ba97237006683133e10b0758999966
Author: Peter D. Gray <peter@conalgo.com>
Date:   Fri Jun 14 13:04:18 2019 -0400

    Refactor/import PSBT handling code into own files

commit 558ef82bb0a8c16fb4e8bd0a6a80190498f1ce57
Author: Peter D. Gray <peter@conalgo.com>
Date:   Tue May 28 13:26:10 2019 -0400

    plugins/hw_wallet/qt.py: show keystore label in tooltip

commit 269299df4a9eb5960b6c6ec0afcbf3ef69ad0be3
Author: Peter D. Gray <peter@conalgo.com>
Date:   Mon May 27 09:32:43 2019 -0400

    Swap endian of xpub fingprint values, so they are shown as BE32 in capitalized hex, rather than 0x%08x (LE32)
2019-09-18 18:29:29 +02:00
SomberNight
bd83ca0286
qt: (trivial) some type hints 2019-09-18 02:10:53 +02:00
SomberNight
0b87ce426f
minor qt send tab fixes. notably 'send max' was broken
follow-up aaed594772
2019-09-16 02:54:32 +02:00
SomberNight
5e04f084b7
qt wizard: follow-up prev; simplify 2019-09-14 16:25:35 +02:00
SomberNight
f44f7d60ab
qt wizard: still show selector window if storage.__init__ raises WFE
(WalletFileException; e.g. if storage version is from the future)
2019-09-14 16:22:06 +02:00
SomberNight
1f305bba39
qt history tab txn drag and drop: fix #5635 2019-09-13 14:12:40 +02:00
ThomasV
26efef9e06 move lightning settings to settings dialog 2019-09-13 11:55:05 +02:00