Commit Graph

50 Commits

Author SHA1 Message Date
James 27b1373595 zcl-ify 2019-02-28 22:26:15 +01:00
zebra-lucky 0c422d5ed9 add plugins changes from electrum 3.1.3 2018-06-28 18:09:34 +03:00
zebra-lucky 8483acc9d5 add Zcash code to plugins exclud. ledger/treror 2018-03-11 12:15:20 +02:00
zebra-lucky b4f8cd8746 remove segwit from plugins/gui/RELEASE-NOTES/main 2018-03-11 01:40:56 +02:00
SomberNight 84239e168b trezor/keepkey separation: init device 2017-12-04 19:56:46 +01:00
SomberNight 414b6e8a06 follow-up 958b794bc9 2017-12-04 19:04:05 +01:00
SomberNight 52eb4aebe6 follow-up 958b794bc9 2017-12-04 18:38:58 +01:00
SomberNight 1359fac4c9 trezor/keepkey separation: tx output type 2017-12-04 18:05:03 +01:00
ThomasV 958b794bc9 separate trezor and keepkey codebase 2017-12-04 17:28:37 +01:00
Justin Turner Arthur 857eb4ac1d Remove unused imports. Explicitly import a few deep imports. 2017-11-13 02:28:00 -06:00
Justin Turner Arthur 8cb34f4d88 Fix undefined reference error in command line KeepKey plugin. 2017-11-12 23:11:22 -06:00
ThomasV 24442de8df fix command line interface for hardware wallets. fixes #3056 2017-10-19 11:59:36 +02:00
SomberNight 5d81ed5d62 fix raw_input() in trezor cmdline 2017-10-17 21:05:26 +02:00
ThomasV fbe27fce04 fix #2811 2017-08-28 05:30:56 +02:00
ThomasV ab15ff3a00 updates for python3 2017-08-26 08:28:24 +02:00
ThomasV c3388d9677 misc python3 updates:
- use jsonrpclib-pelix
 - update the kivy gui
 - update plugins
2017-08-26 08:28:24 +02:00
ThomasV e542b24bc6 Remove dynamic classes in trezor compatible plugins.
This is unecessarily complex, and can be achieved by inheritance.
2016-08-27 12:13:01 +02:00
ThomasV b07d3466c0 new icons to show hardware wallet pairing in status bar 2016-08-27 11:30:53 +02:00
ThomasV eb60e0d2e0 fix hw_type 2016-08-21 22:15:17 +02:00
ThomasV 664077397e device manager: index devices by xpub 2016-08-20 20:54:15 +02:00
ThomasV 55aa29917d Do not use side-effects of import to initialize hardware plugins
Call HidTransport in the context of a function
2016-08-15 12:28:31 +02:00
ThomasV 1159f85e05 Major refactoring
- separation between Wallet and key management (Keystore)
 - simplification of wallet classes
 - remove support for multiple accounts in the same wallet
 - add support for OP_RETURN to Trezor plugin
 - split multi-accounts wallets for backward compatibility
2016-08-12 11:02:28 +02:00
Neil Booth 535956149a trezor: single passphrase entry
Only require the user to input the passphrase once, unless creating
a wallet.
Should they mis-enter the passphrase, they will be warned Electrum
couldn't pair the device, and when they actually need to use it
they will be prompted again.
Fixes #1672
2016-02-11 19:54:55 +09:00
Neil Booth 889976915a KeepKey: Implement secure recovery from seed
This method relies on having a large screen so only
works with KeepKey firmware.
2016-01-23 14:26:13 +09:00
Neil Booth 24037be99c Clean up client caching and handling 2016-01-21 22:56:53 +09:00
Neil Booth 98aef8418c Construct base classes in right order
Fixed #1632
2016-01-16 10:19:48 +09:00
Neil Booth f271f65842 KeepKey / Trezor: client split
We're going to want to do a few things differently, such as
device recovery.  So move the client code to clientbase.py
and create a per-plugin client.py file for the derived client
class.
2016-01-15 13:44:32 +09:00
Neil Booth 3d9f321cae Use a shared device manager
Use a shared device manager across USB devices (not yet taken
advantage of by ledger).  This reduces USB scans and abstracts
device management cleanly.

We no longer scan at regular intervals in a background thread.
2016-01-06 07:56:58 +09:00
Neil Booth e4269f2684 Use relative imports. 2016-01-02 23:34:10 +09:00
Neil Booth 21bf5a8a84 Better support for USB devices
Benefits of this rewrite include:

- support of disconnecting / reconnecting a device without having
  to close the wallet, even in a different USB socket
- support of multiple keepkey / trezor devices, both during wallet
  creation and general use
- wallet is watching-only dynamically according to whether the
  associated device is currently plugged in or not
2016-01-02 20:39:29 +09:00
Neil Booth 11d135b32d Better install wizard
Break out the workflow logic of the install wizard
into a base class.  This means reimplementing with
full support in a new GUI is now easy; you just provide
ways to request passwords, show messages etc.  The API
is fully documented in the base class.

There are a couple of minor outstanding issues, including that
the old messages shown when recovering a wallet are missing.
I will come back to that.  Ledger wallet might be broken.

Other improvements:

The install wizard code is now easy to follow and understand.
Hardware wallets can now be restored without any need for their
accompanying libraries.
Various bits of trustedcoin were broken and have been fixed.
Many plugin hooks can be removed.  I have only started on this.
2016-01-01 16:48:18 +09:00
Neil Booth 1d51335827 Remove need for self.wallet for h/w wallets 2015-12-30 17:03:26 +09:00
Neil Booth 1f3ddad0cd Update as for trezor/qt.py 2015-12-28 23:35:34 +09:00
Neil Booth e2628977b3 Update keepkey too 2015-12-27 18:25:04 +09:00
Neil Booth c02daa56b0 Finish merging keepkey / trezor implementations 2015-12-27 15:00:58 +09:00
Neil Booth d69551f723 Fix two keepkey imports 2015-12-27 13:58:54 +09:00
Neil Booth f3329988b2 More keepkey / trezor commonizing and cleanup 2015-12-27 13:56:50 +09:00
Neil Booth 33e57fe5a7 Share non-GUI plugin parts of KeepKey and Trezor 2015-12-26 19:42:57 +09:00
Neil Booth 42719cd0a9 Commonize GuiMixin for keepkey and trezor 2015-12-26 18:48:07 +09:00
Neil Booth cb4947d705 Add the keepkey cancellation feature
to the generic implementation.  Not currently used by the trezor
libraries.
2015-12-26 18:00:38 +09:00
Neil Booth 7b5f3884fa Combine QTHandlers for KeepKey and Trezor
Again they do the same thing, so share the code
2015-12-26 17:40:12 +09:00
Neil Booth 39c1893a74 Initialize self.d for KeepKey 2015-12-26 16:28:55 +09:00
Neil Booth 3a1bb5b61a Combine keepkey and trezor wallet code
Essentially identical so silly to have two copies.
Also fix a double-dialog during sign bug that caused one to not
disappear (on MacOSX at least).
2015-12-26 16:25:10 +09:00
Neil Booth 96c7f9e7cb Partially revert prior 2015-12-26 12:23:35 +09:00
Neil Booth c298860e11 A fix and cleanups for hardware wallets 2015-12-26 12:02:19 +09:00
Neil Booth 64887f7a74 More message box cleanup 2015-12-23 20:42:30 +09:00
Neil Booth 37b474716b Window modality fixes + improved password dialog 2015-12-23 17:32:08 +09:00
ThomasV ddae2516c1 keepkey: cmdline plugin 2015-12-01 12:04:01 +01:00
ThomasV d5f43610ed fix imports in hardware wallets 2015-12-01 10:00:39 +01:00
ThomasV ba2c737a21 finish separation between plugins and GUIs 2015-11-24 09:36:42 +01:00