Sander van Grieken
5246f3d510
qml: refactor is_last checks to mostly lambdas, add multisig flow for 1st cosigner keystore,
...
add initial flow and view placeholders for additional cosigners.
2022-11-14 12:19:56 +01:00
ghost43
ac239a81b8
Merge pull request #8041 from bigspider/app-bitcoin-new
...
Modify Ledger plugin to support the new bitcoin app v2.1.0
2022-11-10 14:24:14 +00:00
SomberNight
e75110ec04
hw_wallet: de-dupe "message_dialog" code, make text selectable
2022-11-09 21:10:52 +00:00
SomberNight
9b82eb6d06
ledger: re-add support for HW.1, and add a deprecation warning
2022-11-09 20:42:55 +00:00
SomberNight
3cac7e9a61
ledger: minor clean-up
2022-11-09 20:11:08 +00:00
SomberNight
e4a880e435
trezor: use lower device-enumeration timeout for udp transport
...
This transport IIUC is only used for the trezor emulator.
The default timeout is 10 seconds. Every time we enumerate hw devices,
we also enumerate trezor devices, including scanning for the udp transport.
For some reason, recently on Windows, sporadically, this scan keeps
hitting the timeout for me. Quite annoying, as I might not even be testing
trezor (and I am certainly not testing using the trezor emulator on Windows...),
but scanning to test other plugins.
Probably overkill to have a 10 sec timeout for contacting localhost anyway.
2022-11-09 17:46:18 +00:00
Salvatore Ingala
e47270daa5
Fix multiple signing
2022-11-09 13:21:14 +01:00
Salvatore Ingala
3c0e3eb7e2
Refactored LedgerPlugin::create_client, and handle errors when creating the client.
2022-11-09 11:34:41 +01:00
Salvatore Ingala
7c80779903
Replace print() with logger
2022-11-09 11:21:21 +01:00
Salvatore Ingala
80e214d465
- Remove code calling hw1-related features, not supported in the version of btchip embedded in ledger_bitcoin
...
- Fix signature of sign_message in Ledger_Client_Legacy
2022-11-09 10:59:12 +01:00
Salvatore Ingala
f3eb492dca
Update Ledger website to ledger.com in error message
2022-11-08 17:44:09 +01:00
Salvatore Ingala
c401f84aa7
Avoid relying on old btchip package; improve missing library error handling
2022-11-08 17:44:06 +01:00
Salvatore Ingala
2d64dc13c9
Modify Ledger plugin to support the new bitcoin app v2.1.0
2022-11-08 17:44:05 +01:00
Pavol Rusnak
b4e5f35e66
trezor: optimize signing speed by not serializing transaction in trezor
...
Since Electrum is not using TxRequestSerializedType.serialized_tx
we might ask the device not to serialize transactions
by setting SignTx.serialize=False
This flag is only present in trezorlib 0.13.4, so only users on that
version will benefit from the speedup.
However, we decided to keep the minimum required version to 0.13.0,
since the newer version is not strictly required.
2022-11-07 16:48:43 +01:00
SomberNight
da3b271f5c
cosigner_pool plugin: handle multiple multisig wallets open
...
fixes https://github.com/spesmilo/electrum/issues/3080
2022-11-06 04:36:56 +00: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
SomberNight
01b5e3f8e0
flake8: enable more mandatory tests
2022-10-31 16:13:22 +00:00
ThomasV
3bb453aaba
PayServer: add settings dialog and hook for view_url
2022-10-28 13:52:24 +02:00
ThomasV
724edd223c
make PayServer a plugin
2022-10-28 12:07:30 +02:00
Sander van Grieken
28b5103d93
remove qml_test plugin, remove plugin settings test
2022-10-21 13:32:16 +02:00
Sander van Grieken
c6496d02ef
add recovery paths (disable and confirm/reset OTP) for 2FA
2022-10-21 13:32:16 +02:00
Sander van Grieken
255f508574
remove unused, add type checking imports
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
43bac2edff
qml: use new wizard approach in qml and also implement 2FA/trustedcoin
2022-10-21 13:31:24 +02:00
SomberNight
4b8790c919
qt 2fa: show different status-bar icon for "2fa disabled" wallet
...
related: https://github.com/spesmilo/electrum/issues/8018
2022-10-16 15:10:46 +00:00
Jamie C. Driver
68f320041a
jade: update Jade api to 0.1.37
2022-09-15 11:54:42 +01:00
Sander van Grieken
6bbd18dc78
qml: fix flake errors
2022-09-09 19:58:48 +02:00
Sander van Grieken
27999a9583
qml: clean up, generalize plugin gui base, enumerate plugins in gui
...
(still quite crude impl, dynamic enable/disable plugin gui is misaligned
with backend)
2022-09-08 15:15:46 +02:00
Sander van Grieken
32a81d8ee7
qml: initial plugin support, with labelsync mostly implemented
2022-09-08 12:19:38 +02:00
SomberNight
16c84acb98
hw wallets: improve error message when a dependency is missing
...
e.g.
```
Debug message
jade: (error getting device infos)
Missing libraries for jade.
ModuleNotFoundError("No module named 'cbor'")
Make sure you install it with python3
```
2022-08-15 10:38:56 +00:00
SomberNight
388811296e
qt: replace some hardcoded pixel sizes for better high-dpi support
2022-08-10 20:23:56 +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
ThomasV
ad9030bd15
labels plugin: handle setting a label to None
2022-07-29 09:38:15 +02:00
SomberNight
79fec3417a
crypto.py: rm {En,De}codeAES_base64. instead use {En,De}codeAES_bytes
2022-07-12 15:50:42 +02:00
Sander van Grieken
1260720bb6
qml: qml test plugin
2022-07-07 18:28:00 +02:00
Sander van Grieken
d195fce82d
qml: hook any qml supporting plugins, add test plugin
...
This allows different platforms to have their own UI components while still leveraging the common
set of QObjects and utility components.
2022-07-07 18:28:00 +02:00
SomberNight
5b29e6d4f5
qt: (refactor) split "receive tab" out from main_window.py
2022-07-01 16:03:28 +02:00
SomberNight
574243b897
hww ledger: call scan_devices fewer times
2022-06-03 17:14:51 +02:00
SomberNight
b5d3f1458a
hww: impl get_client in Hardware_KeyStore instead of subclasses
2022-06-03 17:14:44 +02:00
SomberNight
745e697188
hww: move trigger_pairings to DeviceMgr
2022-06-03 17:14:40 +02:00
ThomasV
c67c4e95dc
remove email plugin
2022-05-24 11:48:14 +02:00
Jeremy Rand
1aa444e0f8
Fix "== None" linter fails
...
Credit to Zoltan Konder for pointing me to this issue.
2022-05-24 02:39:11 +00:00
SomberNight
cac4b6f92c
email plugin: SSL was using insecure defaults
2022-05-23 19:04:51 +02:00
SomberNight
7e77a7e1cc
email plugin: (trivial) adapt to Invoices refactor
2022-05-23 18:53:19 +02:00
SomberNight
98feff07ad
threading.Thread: fix some DeprecationWarnings
...
"DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead"
2022-05-23 17:52:39 +02:00
Jamie C. Driver
15f108aaa5
Add support for the Blockstream Jade hww
2022-05-20 16:03:46 +01:00
SomberNight
7f876e46fb
hw plugins: (follow-up) rm some more dead code
...
follow-up 30623c3529
2022-05-11 19:41:25 +02:00
SomberNight
6c50d3b0a3
hw plugins: (cleanup) rm no-op clear_client argument from keystore.give_error
...
The keystore does not have a "client" field.
One is supposed to use the "get_client" method instead (the generic API is `plugin.get_client(keystore)`)
Remnants of old code.
2022-05-11 19:30:14 +02:00
SomberNight
aab8e664ed
hw plugins: (cleanup) Plugin objects should not have a Client field
...
Clients are per-connected-device, plugins are ~singletons.
These were mostly remnants of old code.
2022-05-11 19:16:18 +02:00
SomberNight
30623c3529
hw plugins: (cleanup) Plugin objects should not have a Handler field
...
Handlers are per-client (connected device), plugins are ~singletons.
These were mostly remnants of old code.
2022-05-11 19:13:00 +02:00