Commit Graph

881 Commits

Author SHA1 Message Date
Neil Booth
1e030706cb Trezor: small improvements for device initialization 2016-01-22 19:48:04 +09:00
ThomasV
cb098ace73 Merge branch 'master' of git://github.com/spesmilo/electrum 2016-01-21 16:35:44 +01:00
ThomasV
5a03caf051 kivy: update fiat amounts when changed 2016-01-21 16:34:58 +01:00
Neil Booth
cefd128020 Trezor: improve install wizard
Add explanatory help about passphrases, with warning, like
in trezor dialog box.
2016-01-22 00:01:09 +09:00
Neil Booth
0d14781463 Trezor: GUI fixes
Trezor window was doing GUI stuff outside the GUI thread
2016-01-21 23:33:15 +09:00
Neil Booth
24037be99c Clean up client caching and handling 2016-01-21 22:56:53 +09:00
Neil Booth
13420f6917 Keepkey: doesn't yet support homescreen setting
Make some text shorter so it fits in radio buttons
2016-01-19 22:38:02 +09:00
Neil Booth
eebabdf209 Merge branch 'client_thread' 2016-01-19 21:01:46 +09:00
Neil Booth
7029411629 Threaded trezor dialog
Also fix up the dialog box a bit
2016-01-19 20:58:10 +09:00
ThomasV
8ed443b4c8 kivy: improve settings dialog 2016-01-19 12:37:40 +01:00
Neil Booth
9ab9c73d6d Threaded wallet creation 2016-01-18 07:33:04 +09:00
Neil Booth
06c262d0dc TrezorClient: should be in a separate thread
First steps; get show_address working.
Client is not responsible for showing exceptions.
Suppress uninteresting exceptions.
2016-01-18 07:33:04 +09:00
Neil Booth
c99f0acfba Localize Image import for now 2016-01-18 07:25:55 +09:00
ThomasV
d200b236ae replace tx.input, tx.output by methods, so that deserialize calls are encapsulated 2016-01-17 15:04:11 +01:00
Neil Booth
c160a99ebc Add cancel button to trezor dialogs 2016-01-17 18:39:09 +09:00
Neil Booth
144f53be18 Use TaskThread to simplify ThreadedButton
And improve labels dialog
2016-01-17 16:13:32 +09:00
ThomasV
fe32d051d1 Merge pull request #1627 from fhirschmann/kraken_plugin
Add Kraken exchange to exchange_rate plugin
2016-01-16 12:53:59 +01:00
Neil Booth
98aef8418c Construct base classes in right order
Fixed #1632
2016-01-16 10:19:48 +09:00
Pedro Alves
69555d5ad9 Added two of the biggest brazilian exchangers, "Bitcontoyou" and "MercadoBitcoin", to Exchange rates plugin. 2016-01-15 15:07:27 -02:00
ThomasV
bd3f3c3554 fix issue #1610 2016-01-15 11:24:19 +01: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
ThomasV
0d52911561 define constants for tx output types 2016-01-14 17:15:50 +01:00
Neil Booth
4eba1c1d8a Wizard: fixes for hardware wallet initialization 2016-01-14 07:40:46 +09:00
Neil Booth
6178f5a28f Fix some more regressions and trustedcoin plugin 2016-01-13 22:25:40 +09:00
Neil Booth
0219687d41 Some work on multisig. 2016-01-13 19:20:58 +09:00
Fabian Hirschmann
23312cbcd1 add Kraken exchange to exchange_rate plugin 2016-01-13 01:03:30 +01:00
Neil Booth
2ae3543dc4 Start work on persistent install wizard 2016-01-12 22:31:53 +09:00
Neil Booth
986e198e87 Ledger: move get_client() to the plugin
Mirrors the trezor code
2016-01-11 15:08:12 +09:00
Neil Booth
deccca1827 Ledger: handler belongs on wallet
Move closer to trezor sanity
2016-01-11 14:38:45 +09:00
Neil Booth
1ec3ad59cc Ledger: get new wallet creation working again
This is enough to get new wallet creation working in the
absence of errors.
2016-01-11 14:23:35 +09:00
Neil Booth
b120dd8849 Fix root derivation changes for BIP44_Wallets
Wallet keys use root_name
Also typo xub -> xpub
2016-01-11 11:39:56 +09:00
ThomasV
c47e3499ce rename wallet methods 2016-01-10 12:56:15 +01:00
Neil Booth
3d781a2d1b BIP32_HD_Wallet: Fix address derivation
Unfortunately there was root_name and root_derivation confusion
in the past for classes derived from BIP_32_HD_Wallet.
Address derivation used root_name and so would begin with 'x/'
whereas it should have begun with root_derivation, and so started
with 'm/'.

This fixes that old wart and removes some fudges from the trezor
code that used to work around it.
2016-01-10 20:06:13 +09:00
Neil Booth
5baa5feb11 Put restore_wallet_class back in the derived classes 2016-01-10 18:41:20 +09:00
Neil Booth
5e8d28a187 leger: remove unused imports 2016-01-10 17:43:02 +09:00
Neil Booth
9946feb352 Have BTChipWallet derive from BIP44_Wallet
Narrowing the gap with the Trezor code a bit
2016-01-10 17:38:39 +09:00
Neil Booth
d5c3c09bbc Trezor: Implement decrypt message
For reasons I don't yet understand this can only decrypt
messages encrypted by the Trezor, not by Electrum
2016-01-10 14:21:40 +09:00
Neil Booth
9cf0a9720f QT handler improvements
Now we have the top_level_window() function, stop using the window
stack.
2016-01-10 13:24:56 +09:00
Neil Booth
2f1d6b2379 Have Trezor dialog work even if wallet unpaired
Required cleanup of handler logic.  Now every client
is constructed with a handler, so there is never a
question of not having one.
2016-01-09 17:15:31 +09:00
Neil Booth
3e8598c245 Move trezor-specific install wizard code to plugin 2016-01-09 15:21:38 +09:00
Neil Booth
54cdd551fe Avoid unnecessary exception on missing libs 2016-01-09 00:27:22 +09:00
Neil Booth
9f0d2f4d21 Replace two uses of dialog with self 2016-01-09 00:24:58 +09:00
Neil Booth
a3bced210d Treozr: improved settings screen
Nicer layout.  Split into three tabs.
2016-01-08 21:14:34 +09:00
ThomasV
b21ea13940 trezor: fix create account 2016-01-07 01:17:35 +01:00
ThomasV
5915b9b7e1 restore action-driven wizard logic 2016-01-07 00:55:23 +01:00
Neil Booth
0117109a2d Trezor: show supported coins
Also fix dialog layout issue on MacOSX
2016-01-06 23:25:15 +09:00
Neil Booth
6fb7dbd30d Implement passphrase protection toggling.
Along with chicken box.
2016-01-06 23:08:02 +09:00
Neil Booth
9b29c6c2e6 Trezor: all four available device initializations
Trezor and KeepKey devices can now be initialized by:
- device-generated seed
- existing seed
- BIP39 mnemonic
- master private key
2016-01-06 22:18:56 +09:00
ThomasV
59343ec6ec fix get_label in plot.py 2016-01-06 10:32:58 +01: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
5b8e096d57 Fix typo in prior except block 2016-01-05 21:55:47 +09:00
Neil Booth
d98f123f92 Fix make_unsigned_transaction for trustedcoin
Fixes #1600
2016-01-05 21:53:38 +09:00
ThomasV
c2accd64cf trustedcoin: don't use assert in hooks, it crashes when using multiple windows. show message if wallet is restored from seed. 2016-01-04 15:16:36 +01:00
ThomasV
32483e64c6 fix syntax errors in trustedcoin plugin 2016-01-03 18:37:14 +01:00
Neil Booth
2ad009bb9d Add some informative comments 2016-01-03 21:03:11 +09:00
Neil Booth
6516b28840 TrezorCompatiblePlugin: make it a thread job
We shouldn't be using QT gui threads
2016-01-03 20:46:47 +09:00
Neil Booth
43fd684d97 Trezor: add session timeout to preferences
Fixes #803
2016-01-03 17:25:47 +09:00
Neil Booth
87363c8301 Trezor: Implement resetting a device 2016-01-03 13:34:03 +09:00
Neil Booth
e6afaf173c Hardware wallets can create accounts 2016-01-03 11:10:31 +09:00
Neil Booth
a7028176cd Trezor: Add wipe device functionality
Also add a chicken box for PIN removal.
2016-01-03 10:26:34 +09:00
Neil Booth
9eaf510ac6 Test if initialized to determine watching only
Prepares for device wipe functionality
2016-01-03 09:18:29 +09:00
Neil Booth
f3e6bf0280 Passphrase-related fixes
Move normalize code to one place on the wallet
Passphrases don't have password strength meter
2016-01-03 09:03:07 +09:00
Neil Booth
4fe01cb8d3 Change scan_devices logic
Fixes title bar updates about watching only
2016-01-03 00:02:20 +09:00
Neil Booth
e4269f2684 Use relative imports. 2016-01-02 23:34:10 +09:00
Neil Booth
3f2ba5ec20 Fix QtHandler modality 2016-01-02 23:27:04 +09:00
Neil Booth
3422d855c9 A few small fixes 2016-01-02 23:06:53 +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
187b4dc9c1 Trezor: Need to set client in show_address 2016-01-02 11:07:39 +09:00
Neil Booth
1d07960290 Remove constructor method of plugins
Clean up wallet class loading.
2016-01-02 00:16:15 +09:00
Neil Booth
cf4ee487cd Remove duplicate code
Cut-n-paste somehow into the same class
2016-01-01 22:57:21 +09:00
Neil Booth
c3df5c7177 Work around trezor library bug
expand_path() should be static.  Until it is we implement it ourselves.
2016-01-01 21:11:46 +09:00
Neil Booth
d63e754c67 Remove some unused hook infrastructure 2016-01-01 19:15:01 +09:00
Neil Booth
2f58d419dc Get ledger wallet working, for restore at least
Fixes #1592
2016-01-01 18:38:43 +09:00
Neil Booth
d150a6d29c Fix trustedcoin crash 2016-01-01 18:22:06 +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
93d05e8cfe Have close_wallet hook take a wallet. 2015-12-31 10:31:49 +09:00
Neil Booth
b8f2d9dfd4 Hardware wallets don't have seeds 2015-12-31 09:56:05 +09:00
Neil Booth
f263f8b0fd Convert legacy restored hardware wallets
Hardware wallets do not have a seed and hardware wallet
code should not have to worry about that case.
2015-12-31 09:51:27 +09:00
Neil Booth
19f527c717 Fix typo 2015-12-30 23:41:05 +09:00
Neil Booth
1d51335827 Remove need for self.wallet for h/w wallets 2015-12-30 17:03:26 +09:00
Neil Booth
84450b9189 Revert mistaken commit 2015-12-29 23:16:53 +09:00
Neil Booth
0f70d0b8a5 The constructor() concept doesn't exist
Did it ever?
2015-12-29 22:59:25 +09:00
Neil Booth
993ff30616 Eliminate dead code 2015-12-29 22:48:45 +09:00
Neil Booth
56497c1ae2 Don't use is_available() for HW wallets
is_available() is only used from generic code for non-hardware
wallets.  Having a local function of the same name is confusing.
2015-12-29 22:46:22 +09:00
Neil Booth
1f3ddad0cd Update as for trezor/qt.py 2015-12-28 23:35:34 +09:00
Neil Booth
638bdc23f2 Fix hardware test for watching only 2015-12-28 22:32:57 +09:00
Neil Booth
7811b974e9 Remove more duplicated code 2015-12-28 22:20:45 +09:00
Neil Booth
d843e41884 TrezorWallet: don't duplicate base class funcs 2015-12-28 22:11:11 +09:00
Neil Booth
791d3a2aa2 Partially restore prior
It was breaking hardware wallet creation
2015-12-28 21:58:09 +09:00
Neil Booth
9d9fcbde64 Proper treatment of restored hardware wallets
They have a different wallet type; they require no plugin nor
plugin libraries to use.

Remove pointless public key code that was implemented in the
base classes already.

Partial fix for #1592.  Unfortunately the plugin and library
are still required to actually restore the wallet, but for
no reason that isn't fixable.
2015-12-28 20:24:15 +09:00
Neil Booth
b50ace4225 Support adding/removing/changing PIN on Trezor 2015-12-27 23:13:38 +09:00
Neil Booth
1b754524f9 Add more information to the trezor settings dialog 2015-12-27 22:31:27 +09:00
Neil Booth
43d21de1b2 Clean up trezor client interface 2015-12-27 19:29:57 +09:00
Neil Booth
e2628977b3 Update keepkey too 2015-12-27 18:25:04 +09:00
Neil Booth
11e1c62f28 Move hardware wallet to trezor/
On second thoughts it does go better there.
2015-12-27 18:23:46 +09:00
Neil Booth
669cf74789 Fix trezor restore
Broken by my recent changes
2015-12-27 15:38:52 +09:00
Neil Booth
7372e0e082 PEP8-ify most of plugins/trezor 2015-12-27 15:10:53 +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
8f91af28a5 More cleanup of WaitingDialog
Simplify its interface
2015-12-26 11:18:32 +09:00
Anwesh
93bcd98763 Merge branch 'master' of https://github.com/spesmilo/electrum 2015-12-24 06:59:16 +05:30
Neil Booth
d70ad3df93 Better waiting dialog for trustedcoin 2015-12-23 22:21:29 +09:00
Neil Booth
ffd081ac21 Clean up WaitingDialog
Prevent GC so callers don't have to.
2015-12-23 22:10:11 +09:00
Neil Booth
64887f7a74 More message box cleanup 2015-12-23 20:42:30 +09:00
Neil Booth
37a49752eb Fix greenaddress modality and centring issues 2015-12-23 20:13:17 +09:00
Neil Booth
37b474716b Window modality fixes + improved password dialog 2015-12-23 17:32:08 +09:00
Neil Booth
15e9991e2a Move message box logic to a mixin 2015-12-23 15:10:15 +09:00
Neil Booth
0a3a0f12cc Make more dialogs window-modal
Also remove some unnecessary imports
2015-12-23 12:20:19 +09:00
Neil Booth
44a436e964 Make line_dialog, text_dialog window modal
Move new_wallet and get_wallet_folder from qt/__init__.py
to qt/main_window.py for correct centring and window modality.
2015-12-22 07:55:33 +09:00
Richard Ulrich
ae3b82297f added missing import 2015-12-20 23:20:13 +01:00
Neil Booth
e1c0298fc2 Write the wallet less often
This should speed up synchronization / restoration of large wallets.
Wallets are written only when they switch to up_to_date state, or
when stop_threads() is called when closing the daemon, or when
a command line command finishes.
2015-12-20 15:47:46 +09:00
ThomasV
ba26996367 fix exchange_rate in kivy 2015-12-15 12:29:48 +01:00
Neil Booth
b1704ce911 Fix multiple trustedcoin bugs. 2015-12-13 18:13:24 +09:00
Anwesh
b23c22b29d Updated Coinsecure Api
Added Unocoin Api
2015-12-10 15:51:19 +05:30
ThomasV
de964f4033 plugins: on_close method 2015-12-09 09:41:24 +01:00
ThomasV
9b2885e697 kivy: updates 2015-12-05 18:14:17 +01:00
Neil Booth
eb82a5e689 Cleanup labels/qt imports. 2015-12-05 21:52:19 +09:00
Neil Booth
a0b031c7df Fix labels plugin wallet popping bug. 2015-12-05 21:47:17 +09:00
Neil
c3bd9226f2 Merge pull request #1570 from kanishkablack/master
Coinsecure exchange added
2015-12-05 10:57:50 +09:00
ThomasV
b700340ff9 kivy: use exchange rates in amount dialog 2015-12-03 22:43:43 +01:00
Anwesh
0ece74eea6 Coinsecure exchange added 2015-12-03 16:27:32 +05:30
ThomasV
74a9e2296c separate Network and Plugins 2015-12-03 11:18:10 +01:00
ThomasV
6ec610c359 kivy updates 2015-12-02 12:11:28 +01:00
ThomasV
deefd74c37 labels sync for kivy 2015-12-01 17:29:24 +01:00
ThomasV
d8e65782e1 ledger: cmdline plugin 2015-12-01 12:06:21 +01:00
ThomasV
ddae2516c1 keepkey: cmdline plugin 2015-12-01 12:04:01 +01:00
ThomasV
c7b1721f58 fix cmdline trezor 2015-12-01 12:00:18 +01:00
ThomasV
d5f43610ed fix imports in hardware wallets 2015-12-01 10:00:39 +01:00
Neil Booth
90dee43998 Move estimated_fee to Transaction class
It's not a function of the wallet but of the transaction
so it more naturally belongs there.
2015-11-28 21:28:54 +09:00
ThomasV
0c20e737a9 fix missing import 2015-11-28 00:22:06 +01:00
ThomasV
9782734f4c plugins: trustedcoin fixes 2015-11-26 14:15:54 +01:00
Neil Booth
cf23127ac1 Preserve alphabetical ordering...
And 2 is the default anyway as for most western currencies.
2015-11-25 00:16:06 +09:00
ThomasV
c6780cce84 add Bitso exchange rate 2015-11-24 10:35:25 +01:00
ThomasV
ba2c737a21 finish separation between plugins and GUIs 2015-11-24 09:36:42 +01:00
ThomasV
2c0489c809 plugins: separate GUIs using child classes 2015-11-23 14:15:25 +01:00
ThomasV
175fdbcac6 Disentangle plugins and window management; use Qt signals 2015-11-23 09:05:34 +01:00
Neil Booth
e9384f15ed Plugins manage their own wallet tracking 2015-11-14 15:58:10 +09:00
Neil Booth
d1cd6d5645 Labels plugin: drop wallet on window close
Will help GC
2015-11-12 11:29:53 +09:00
ThomasV
c86ef5e8b0 hardware wallets: fix sign_transaction in resstored wallets 2015-11-04 19:13:24 +01:00
Neil Booth
7d0d2f2097 Work around Bitcoin Venezuela serving NULLs.
Fixes #1510.
2015-10-24 23:23:43 +09:00
ThomasV
7a060e86b2 minor fix FX plugin 2015-10-17 12:46:05 +02:00
ThomasV
302ce7c15b simplify exchange_rate hooks 2015-10-17 06:26:37 +02:00
Tim Bellefleur
e81814416a Add historical data for BitcoinAverage (via CSV) 2015-10-15 14:56:23 -07:00
Tim Bellefleur
ad198c372b Add BitStamp to exchange rate options. 2015-10-15 13:10:15 -07:00
Tim Bellefleur
80bf9952e8 Fix method call to BitcoinAverage 2015-10-15 13:10:00 -07:00
ThomasV
a5e94ef0e8 kivy: use plugins 2015-10-13 12:12:49 +02:00
ThomasV
87168282b9 check wallet type in installwizard_load_wallet hook 2015-10-01 12:37:46 +02:00
Neil Booth
6bbde8389d Pass window not window.app 2015-09-26 17:24:57 +09:00
Neil Booth
a4a2eb9b5c Handle None satoshis properly 2015-09-26 17:19:14 +09:00
Neil Booth
cf44e65ba8 Rework resizing of send and receive tabs
Should fix #1458
They now function in essentially the same way.
2015-09-26 12:14:35 +09:00
ThomasV
3f145864ef fix syntax error in exchange rate plugin 2015-09-13 21:12:52 +02:00
Neil Booth
22788e9ab0 Use spot rate for unconfirmed TXs 2015-09-12 19:18:49 +09:00
ThomasV
483cf2286f format_amount_and_units: general method to display amounts and fiat values. fixes #1078 2015-09-11 16:46:37 +02:00
Neil Booth
f710d872c7 When using labels plugin write wallet once
Poor hook coupling would cause the wallet to be written
twice unnecessarily when using the labels plugin and changing
a label
2015-09-10 22:29:25 +09:00
Neil Booth
886192aba7 Make trustedcoin.py multi-window compatible 2015-09-09 17:27:58 +09:00
Neil Booth
0371a3dc32 Don't refresh whilst editing!
It's long been a pet peeve of mine that whilst editing a label,
something would cause Electrum to refresh the widget, such as
an incoming tx or a new block, and you'd lose your edits.
This changes MyTreeWidget so that, if editing, updates are
deferred until editing finishes.
2015-09-09 09:36:35 +09:00
ThomasV
37caf97ee9 show currency in column header rather than in each row 2015-09-08 12:10:27 +02:00
Neil Booth
650f9b215c Fix itbit 2015-09-07 07:38:30 +09:00
Neil Booth
154cdd1697 Improved error handling for exchange requests 2015-09-07 00:23:59 +09:00
Neil Booth
c0b93c83ab Minor fixes to exchange_rate plugin
- some exchanges only server their API via http
- add/remove columns as the history check box is selected/deselected
2015-09-07 00:01:26 +09:00
Neil Booth
0db2dbf3d7 Extra headers only if used. 2015-09-06 23:20:05 +09:00
Neil Booth
93b99ebded Handy new class PrintError
Saves adding "def print_error" to endless classes.
2015-09-06 21:40:00 +09:00
Neil Booth
9b50d1e7bc Fix history headers on plugin load / unload 2015-09-06 21:14:36 +09:00
Neil Booth
26f2c757d3 Implement correct currency precision 2015-09-06 18:06:56 +09:00
Neil Booth
ce3c38db38 Remove FIXME and dead variable 2015-09-06 14:18:25 +09:00
Neil Booth
1d35954541 Fix status bar FX balance display 2015-09-06 14:16:54 +09:00
Neil Booth
34ce6d1821 Updates for exchange_rate plugin
Have AmountEdit return an int if is_int, otherwise a Decimal
Set the tray tooltip unconditionally.
More verbose logging for exchage_rate plugin.
Get rate_float from Coindesk as rate can have commas.
Plugin tracks windows itself, and doesn't create its own
members in the window objects.
Clean up the edit handling.
2015-09-06 13:42:40 +09:00
Neil Booth
95d3f6da1f A couple of fixes
- Give hook correct name
- Use spot if no data and today - tx_date <= 2 because of timezone
  differences.
2015-09-06 00:54:05 +09:00
Neil Booth
76465aa6bd ExchangeBase is not an exchange 2015-09-05 23:05:34 +09:00
Neil Booth
9e0e54157e More improvements to exchange_rate plugin
Everything should now update correctly on incoming data from
the exchange server.
2015-09-05 22:47:01 +09:00
Neil Booth
c290455b94 More signal work and bugfixes
Replace self.fiat_unit() mostly with self.ccy, except
for cases where a dynamic post-hoc query is needed.
Block signals to prevent unwanted currency choice change.
Remove dead code.
2015-09-05 22:16:24 +09:00
Neil Booth
b5f986ee56 Torwards sane signalling for exchange_rate plugin 2015-09-05 21:47:35 +09:00
Neil Booth
2a9bc559b2 Remove unwanted hook. 2015-09-05 17:33:57 +09:00
Neil Booth
915ee94cdd Re-add Fiat Balance column 2015-09-05 17:29:57 +09:00
Neil Booth
1171a25815 Genericize plugin handling of thread jobs
Move it to the Plugins class so all plugins get it for
free.
2015-09-05 17:21:28 +09:00
Neil Booth
3d2ab45b04 Merge Exchanger class into the Plugin class. 2015-09-05 17:01:26 +09:00
ThomasV
b036e8597a fix typo 2015-09-05 09:37:45 +02:00
ThomasV
1f215ae673 cleanup 2015-09-05 09:35:09 +02:00
ThomasV
815adb3983 Merge branch 'master' of git://github.com/spesmilo/electrum
Conflicts:
	plugins/exchange_rate.py
2015-09-05 09:16:11 +02:00
ThomasV
015e274dab rework exchange_rate hooks 2015-09-05 09:11:48 +02:00
Neil Booth
2df8881824 Remove duplication of parent column names.
We no longer assume how many columns the history widget
has or their names.

Add a fiat balance column.

Remove extra columns when shutting the plugin.
2015-09-05 16:04:58 +09:00
Neil Booth
f4a1b0adce Fix Winkdex. 2015-09-05 15:22:04 +09:00
Neil Booth
8cccf1eec5 Don't resize extra column to contents
Something in QT makes this very slow for this column after
editing a label
2015-09-05 15:02:33 +09:00
Neil Booth
9da22000b6 More improvements to exchange_rate plugin
- better historical rate handling, including caching
- grabbing and scanning wallet transactions no longer needed
- fix autosize of fiat column
- more efficient
2015-09-05 14:05:37 +09:00
Neil Booth
8d046c7919 Fix some bugs in last push 2015-09-05 01:24:16 +09:00
Neil Booth
08f1e56cef Clean up more of the exchange_rate.py mess 2015-09-05 00:58:57 +09:00
Neil Booth
19e128adf0 Simply some of exchange_rate plugin 2015-09-04 20:49:58 +09:00
Neil Booth
bbd50ba83c Remove all self.window references from plugins 2015-09-04 18:23:18 +09:00
Neil Booth
0792792513 Remove init_qt hook for virtkeyboard plugin 2015-09-04 17:49:20 +09:00
Neil Booth
6372a3f6ce Plot plugin for multiple windows. 2015-09-04 17:43:07 +09:00
Neil Booth
89fbda30e0 Labels plugin now working for multiple windows 2015-09-04 17:38:14 +09:00
Neil Booth
efc95307e2 Greenaddress plugin works with multiple windows 2015-09-04 15:26:33 +09:00
Neil Booth
8e7bcfeeb9 Update email plugin for multiple windows. 2015-09-04 13:29:33 +09:00
Neil Booth
73de35aa56 Remove unused var 2015-09-04 12:46:33 +09:00
Neil Booth
2aa21ece79 Fix cosigner_pool plugin for multiple windows 2015-09-04 12:36:25 +09:00
Neil Booth
77a029082a Improved new_window handling.
Remove new_window hook.
Plugin informed of all windows via events when first loaded.
init_qt no longer needed for exchange_rate plugin.
2015-09-04 10:20:52 +09:00
Neil Booth
8ce2a95695 Have plugins object track the window set
No need for self.gui nor init_qt hook any more.  This makes
plugins more independent of window and gui types.
2015-09-04 09:26:35 +09:00
Neil Booth
ec3b7ba5ee Pass plugins object to plugin constructor 2015-09-04 09:07:18 +09:00
Neil Booth
ebddbcb805 Fix bug. 2015-09-03 17:17:46 +09:00
Neil Booth
f565d79c11 Remove debug print 2015-09-03 16:29:55 +09:00
Neil Booth
613403f418 Exchange rate plugin fixes
Set the new column width even though autosizing
Register all wallets in mid-session loads
Improved historical rate fetching
2015-09-03 16:26:52 +09:00
ThomasV
a36b1d701c this is unneeded, new_windos already is a hook 2015-09-03 08:22:12 +02:00
ThomasV
e80870a9b0 fix syntax error 2015-09-03 08:15:39 +02:00
ThomasV
26ab5519b2 remove unwanted for loop in plugin hook 2015-09-03 08:14:42 +02:00
Neil Booth
2c67de8f64 Fix a couple of bugs. 2015-09-03 10:42:42 +09:00
Neil Booth
f2fb856f1c Exchange rate plugin fixes for multiple windows
This should be enough to keep everything working that was working
before.  The plugin itself needs a lot more work to fix existing
bugs and be sane.
2015-09-02 20:40:55 +09:00
Neil Booth
5be16ad5ca Clean up exchange handling in FX plugin 2015-09-02 18:53:23 +09:00
ThomasV
c3fb7fdb1d Merge pull request #1436 from keepkey/master
fixed attempt to access account derivation before it is created
2015-09-01 18:10:41 +02:00
Darin Stanchfield
c918ec2cdf fixed attempt to access account derivation before it is created 2015-09-01 08:55:39 -07:00
ThomasV
127f5f8804 Merge pull request #1434 from keepkey/master
made sure to check if x_pubkey is valid xpub before parsing it
2015-09-01 09:43:36 +02:00
Darin Stanchfield
24af832fbd made sure to check if x_pubkey is valid xpub before parsing it 2015-09-01 00:22:42 -07:00
Neil Booth
a5e0265010 Make exchange rate plugin a network thread job
This fixes a lot of thread error noise when closing down electrum.
2015-08-31 20:33:39 +09:00
Neil Booth
f5a8da43e9 Have fields update as exchange rates do
Currently the exchange rates plugin shows the converted
rate at the time of last user input.  If the fx rate
changes the send and receive tabs do not update.

This makes them update.  It also means that when enabling
the plugin, if the user had input a BTC amount in the send
or receive, the other fields will refresh.  This didn't
used to happen - they stayed blank.
2015-08-31 20:14:44 +09:00
Neil Booth
2d05e7d891 Merge the network and network_proxy 2015-08-31 12:00:38 +09:00
Darin Stanchfield
c73ea700e1 cleanup on error handling when a transaction is cancelled 2015-08-30 09:36:13 -07:00
Darin Stanchfield
0d4805f6fd added cancel button to transactional dialogs 2015-08-30 09:24:31 -07:00
Roman Zeyde
fea97454b1 typo fix: rename pay_from_URI() -> pay_to_URI() 2015-08-25 17:29:52 +03:00
ThomasV
486d181b0b fix for #1408 exchange rates plugin 2015-08-23 19:22:52 +02:00
ThomasV
6a0fde329a fix #1416 2015-08-23 15:25:11 +02:00
ThomasV
728dc85c84 remove duplicate available_for 2015-08-21 00:18:08 +02:00
Darin Stanchfield
39d4688419 added icon for keepkey as well as updated with latest trezor plugin changes 2015-08-20 13:22:00 -07:00
Darin Stanchfield
0e8fa5d004 moved up to keep in order 2015-08-20 13:21:10 -07:00
Darin Stanchfield
257fd9bfb0 Merge branch 'master' of https://github.com/spesmilo/electrum 2015-08-20 13:14:33 -07:00
ThomasV
ed6c6bae24 fix typo 2015-08-19 10:24:11 +02:00
ThomasV
425cc4d258 fix: handle blank passphrase properly 2015-08-19 10:20:33 +02:00
ThomasV
2996ec927f fix #862: ask passphrase only once 2015-08-19 10:15:36 +02:00
ThomasV
a5d337c0ce Merge pull request #1394 from LedgerHQ/ledger-rename
Rename BTChip -> Ledger
2015-08-14 15:43:48 +02:00
BTChip
22c602a61c Rename BTChip -> Ledger 2015-08-14 13:34:22 +02:00
BTChip
59e999d3a5 Update installwizard init 2015-08-13 23:28:36 +02:00
ThomasV
94ecf8dd7d fix trezor statusbar 2015-08-12 15:51:31 +02:00
Darin Stanchfield
cdd3151312 added KeepKey plugin information 2015-08-10 23:28:03 -07:00
Darin Stanchfield
373e267e12 created new KeepKey plugin based on Trezor's 2015-08-10 23:27:42 -07:00
ThomasV
c3991091de move init_qt hook 2015-08-07 20:06:31 +02:00
ThomasV
97ffa93fcf cosigner pool: don't show both sign and send buttons 2015-08-07 18:47:23 +02:00
ThomasV
7bf91fb7b6 labels plugin: abort if there is not mpk 2015-08-07 17:46:49 +02:00
ThomasV
71ec50e634 fix tooltips 2015-08-06 14:55:05 +02:00
ThomasV
2515fc9b6a use blue color to denote auto-filled values (fee, exchange rates plugin) 2015-08-06 12:56:48 +02:00
ThomasV
b6e7dbe5f7 fix plot plugin 2015-08-06 12:02:09 +02:00
ThomasV
65ff969d07 update trezor dialog 2015-08-06 11:27:45 +02:00
ThomasV
12431a1eb8 add trezor icon 2015-08-06 11:22:16 +02:00
ThomasV
e18ddd0096 do not show plugins that register a custom wallet type in the plugins toggle dialog 2015-08-06 11:12:15 +02:00