Commit graph

3472 commits

Author SHA1 Message Date
SomberNight
1c9a6f5770
qt wizard: fix scanning qr code when restoring from xpub
fixes #6342
2020-07-08 01:51:14 +02:00
SomberNight
4961020e01
wallet: handle exception when deleting last addr from imported wallet
fixes #6347
2020-07-08 01:28:20 +02:00
SomberNight
a6b83edec9
qt lightning dialog: fix min size
fixes #6344
2020-07-08 01:23:50 +02:00
SomberNight
35dad3c10e
qt history list: only offer "View Invoice" if still have invoice
fixes: #6343
2020-07-08 01:19:23 +02:00
SomberNight
9b3f165212
qt channels tab: implement filtering items
fixes #6330
2020-07-07 23:33:57 +02:00
ThomasV
9700e6112b fix wording 2020-07-07 15:31:13 +02:00
ThomasV
daa8225ef0
Merge pull request #6337 from Tigerix/patch-1
Fix Blockchain.com Testnet-URL
2020-07-06 06:02:13 +02:00
michael1011
1980d8db43
gui swap: fix swap wording 2020-07-05 23:24:09 +02:00
Tigerix
8539beb75e
Update util.py
Fixed Blockchain.com Testnet-URL
2020-07-05 12:59:09 +02:00
SomberNight
c54b9a6874
qt receive tab: fix creating new payreq with all used imported wallet
fixes #6325
2020-07-03 20:12:52 +02:00
ThomasV
0f6898ed90 release 4.0.1: prepare release notes, bump version number 2020-07-03 17:14:45 +02:00
SomberNight
da4edc8f74
android: fix back button not working (main surface loses focus)
fixes #6276
2020-07-03 16:10:36 +02:00
SomberNight
d19ff43266
interface: check server response for some methods
some basic sanity checks

Previously if the server sent back a malformed response, it could partially corrupt a wallet file.
(as sometimes the response would get persisted, and issues would only arise later when the values were used)
2020-07-02 15:41:39 +02:00
SomberNight
3393ff757e
qt PreviewTxDialog: change feerounding_icon to be a QToolButton
QPushButtons with dark theme have a huge min width (they have text in mind)

related: #6300
2020-07-02 13:49:54 +02:00
SomberNight
8f96a92e75
qt PreviewTxDialog: if not enough funds due to fee, fallback to zero fee
fixes #6306

scenario: confirm tx dialog open, not enough funds (but only due to fees),
user clicks advanced, dialog half-empty.

note: the preview dialog is only half-empty if it never managed to create a tx.
if it did but it cannot now due to the current fee settings, then it will just
show that fee is too high (red text, buttons disabled) and show the last tx with the prev fee
2020-07-02 13:29:51 +02:00
SomberNight
844bbd103a
qt PreviewTxDialog: check for "not enough funds" also when shortcutting
see https://github.com/spesmilo/electrum/issues/6306#issuecomment-652424363

scenario: user saves invoice for more money than they have, has advanced_preview
in config enabled, tries to pay it, half-empty tx preview dialog opens
2020-07-02 13:25:31 +02:00
ghost43
4aed1df0e8
Merge pull request #6293 from btchip/ledger_segwit_trustedinputs
Ledger : Remove warning on Segwit inputs and newer Bitcoin application, use generic signing for P2SH inputs
2020-07-02 10:47:32 +00:00
SomberNight
b042c4118f
ledger: speed-up sign_transaction
really slow to scan usb devices for e.g. every tx input...
if user disconnects mid-signing, we would fail anyway.
2020-07-02 12:45:42 +02:00
SomberNight
48993118ad
ledger: bump min btchip-python version
and minor simplification
2020-07-02 12:45:38 +02:00
SomberNight
6d2aee18d0
dnssec: fix compat with dnspython 1.16 2020-07-02 11:12:38 +02:00
SomberNight
9fa666f179
fix channel backups with old "cryptography" module
closes #6314
2020-07-02 11:07:10 +02:00
ghost43
db063517ec
Merge pull request #6309 from benma/bitbox02
plugins/bitbox02: fix compatibility with bitbox02-4.0.0
2020-07-01 16:49:03 +00:00
Marko Bencun
b1e756ac96
plugins/bitbox02: fix compatibility with bitbox02-4.0.0 2020-07-01 17:49:53 +02:00
zebra-lucky
949b247b19
fix raise UserCacnelled calls (#6304) 2020-07-01 15:37:31 +00:00
ThomasV
9547a4e60c Qt: override 'persist_daemon' option if users exits from menu 2020-06-30 11:16:27 +02:00
ThomasV
b43aba7f09 improve help text regarding watchtower 2020-06-30 11:15:25 +02:00
SomberNight
7a6ec23b6e
cosigner pool: use single thread to send messages
ServerProxy does not seem to be thread-safe.
For e.g. a 2of3 multisig wallet, which would send two messages,
one msg would get sent but the other might error out. See trace:

E | plugins.cosigner_pool.qt.Plugin | on_failure
Traceback (most recent call last):
  File "...\electrum\electrum\gui\qt\util.py", line 832, in run
    result = task.task()
  File "...\electrum\electrum\plugins\cosigner_pool\qt.py", line 199, in <lambda>
    task = lambda: server.put(_hash, message)
  File "...\Python38\lib\xmlrpc\client.py", line 1109, in __call__
    return self.__send(self.__name, args)
  File "...\Python38\lib\xmlrpc\client.py", line 1450, in __request
    response = self.__transport.request(
  File "...\Python38\lib\xmlrpc\client.py", line 1153, in request
    return self.single_request(host, handler, request_body, verbose)
  File "...\Python38\lib\xmlrpc\client.py", line 1165, in single_request
    http_conn = self.send_request(host, handler, request_body, verbose)
  File "...\Python38\lib\xmlrpc\client.py", line 1271, in send_request
    connection.putrequest("POST", handler, skip_accept_encoding=True)
  File "...\Python38\lib\http\client.py", line 1088, in putrequest
    raise CannotSendRequest(self.__state)
http.client.CannotSendRequest: Request-sent
2020-06-29 02:19:03 +02:00
SomberNight
1a9e6a434f
cosigner pool: user certifi instead of system ssl cert store
related: https://github.com/spesmilo/electrum/issues/5678#issuecomment-650837465
2020-06-29 02:15:01 +02:00
SomberNight
faafb70d4c
follow-up prev
(committed wrong raw tx literal)
2020-06-28 17:45:00 +02:00
SomberNight
29534dcf3d
commands: allow setting custom 'nsequence' in 'serialize' cmd
closes #6297
2020-06-28 17:26:52 +02:00
SomberNight
0d7bcde2db
qt dark theme: on mac, AmountEdit units were using dark text on dark bg
see #6281
2020-06-28 03:50:34 +02:00
SomberNight
93a4969fba
qt dark style: bandaid for dropdown item heights
see #6281
2020-06-28 03:46:20 +02:00
BTChip github
c1101ee258
Remove warning on Segwit inputs and newer Bitcoin application, use generic signing for P2SH inputs 2020-06-27 18:26:54 +02:00
SomberNight
8d0c03caff
synchronizer: enforce that unconfirmed txs must have fee information
related: #6289
2020-06-27 16:32:46 +02:00
SomberNight
9cd79ec2e5
WalletDB: raise different exc if cannot parse given file
closes #6292
2020-06-27 16:03:03 +02:00
SomberNight
dee5d52948
invoices: make sure that OnchainInvoice .exp and .time are not None
related: #6284
2020-06-27 02:27:50 +02:00
SomberNight
2db0ad10db
qt balance str: replace unicode char for LN symbol
closes #6265
2020-06-26 15:34:11 +02:00
ThomasV
e9829563d3 forward swaps: save the onchain amount we actually paid 2020-06-26 11:42:55 +02:00
ThomasV
8773bc2e77 bump version number for next beta 2020-06-26 11:38:44 +02:00
ThomasV
730bfda33a OnchainInvoice: make get_amount_sat return 0 instead of None. fixes #6203 2020-06-26 11:14:23 +02:00
ThomasV
782bfd06e5 swaps: fix group_label 2020-06-26 10:46:06 +02:00
ThomasV
9fd9703107 fix #6275 2020-06-26 10:07:51 +02:00
ThomasV
b0c390e231 wallet.clear_requests. fixes #6279 2020-06-26 09:47:16 +02:00
ThomasV
abac4a4340 swaps: check_invoice_amount (fixes #6217) 2020-06-26 09:19:40 +02:00
SomberNight
5f40414bd2
kivy: fix #6280 (share btn in qr_dialog) 2020-06-26 03:38:39 +02:00
SomberNight
b764d0f0bf
kivy: fix #6262 2020-06-26 03:25:36 +02:00
SomberNight
a97cb88a1a
qt sweep: raise more specific exception so that trace is not logged
When raising generic Exception, window.on_error can't tell whether
there was a programming error or we just want to communicate with the user.

E | gui.qt.main_window.[default_wallet] | on_error
Traceback (most recent call last):
  File "/home/user/wspace/electrum/electrum/gui/qt/util.py", line 832, in run
    result = task.task()
  File "/home/user/wspace/electrum/electrum/gui/qt/main_window.py", line 2900, in <lambda>
    task = lambda: self.network.run_from_another_thread(
  File "/home/user/wspace/electrum/electrum/network.py", line 358, in run_from_another_thread
    return fut.result(timeout)
  File "/usr/lib/python3.8/concurrent/futures/_base.py", line 439, in result
    return self.__get_result()
  File "/usr/lib/python3.8/concurrent/futures/_base.py", line 388, in __get_result
    raise self._exception
  File "/home/user/wspace/electrum/electrum/wallet.py", line 162, in sweep_preparations
    raise Exception(_('No inputs found.'))
Exception: No inputs found.
2020-06-25 23:48:24 +02:00
SomberNight
13dca30428
mac/qt: fix some refresh bugs in swap_dialog and new_channel_dialog
fixes #6269

this is just ugly :/
2020-06-25 22:36:34 +02:00
SomberNight
4216a9164d
qt new_channel_dialog: trivial fix in on_clear() 2020-06-25 22:17:15 +02:00
SomberNight
afbdacbe16
kivy: use on_release instead of on_press in buttons
I think on_release has better UX.
More importantly, on desktop linux with kivy 2.0.0rc2, on_press does not work for me.
(but on Android, with kivy 1.11.1, it does)
2020-06-25 21:55:59 +02:00