Commit Graph

1549 Commits

Author SHA1 Message Date
ThomasV
f97d83b7f4 fix fiat visibility on startup 2017-01-06 19:17:17 +01:00
ThomasV
b2ec525444 simplify fee preferences 2017-01-06 11:22:14 +01:00
ThomasV
bafe3e4ff8 fix #2060: use tx size for high fee warning 2017-01-06 10:54:04 +01:00
ThomasV
d09e91e631 Show fee slider for static fees too. Add fee slider to RBF dialog (fix #2083) 2017-01-06 10:45:05 +01:00
ThomasV
ec42483b6b remove 'not enough funds' message when amount field is emptied 2017-01-04 21:31:15 +01:00
ThomasV
a8c23f9bf0 always display a receiving address (fix #2031) 2017-01-04 19:09:14 +01:00
ThomasV
cd65516ff0 wrap list updates in setUpdatesEnabled() 2017-01-04 18:22:15 +01:00
ThomasV
0e32638765 minor fix 2017-01-04 11:49:23 +01:00
ThomasV
13678d9e13 Merge exchange_rate plugin with main code
* fixes #2037 (tab indexes)
2017-01-03 17:04:04 +01:00
ThomasV
65ee3416f6 rename P2PK to P2PKH to avoid confusion 2017-01-02 11:02:36 +01:00
ThomasV
7e871923f4 paytoedit: fix is_max 2016-12-31 17:10:45 +01:00
ThomasV
0b3fe8df83 follow-up previous commit 2016-12-31 16:57:29 +01:00
ThomasV
e123774ea8 Improve 'send all coins' function:
* do use coin chooser when sending all coins (fixes #2000)
* allow "!" syntax for multiple outputs (fixes #1698)
2016-12-31 16:29:18 +01:00
ThomasV
662577aea6 show error if cannot import plot module 2016-12-30 10:36:14 +01:00
ThomasV
07896efa21 minor fix 2016-12-22 17:36:05 +01:00
ThomasV
cda0d14a13 fix issue #2064 2016-12-21 13:30:35 +01:00
ThomasV
a660590a70 fix #2034 2016-12-20 16:53:01 +01:00
ThomasV
85c7fccdf9 fix wizard options (issue #2080) 2016-12-19 13:25:16 +01:00
ThomasV
0a8f9d49ea add label for size in tx window. use base_unit for fee 2016-12-17 17:28:19 +01:00
ThomasV
dbf0a6f7a5 move plot plugin to lib; plot histograms 2016-12-17 17:06:25 +01:00
neocogent
eb41e23f39 Add more fee info to tx details, update tx estimated_size method. 2016-12-09 12:36:57 +07:00
ThomasV
a937e8756d fix #2025 2016-11-08 17:22:39 +01:00
ThomasV
8249f5ab67 init_headers in daemon thread, and fix #1996 2016-10-24 14:57:02 +02:00
ThomasV
ac59296846 allow spaces in private keys (fix #1602) 2016-10-22 10:06:51 +02:00
ThomasV
23c8684448 qt: show both sign and broadcast buttons in tx dialog 2016-10-22 00:32:19 +02:00
ThomasV
c0fc844390 fix #1673 2016-10-21 15:13:40 +02:00
ThomasV
3062a62cf9 fix #1989 2016-10-21 11:35:26 +02:00
ThomasV
bccdab758b fix #1986 2016-10-18 14:07:52 +02:00
ThomasV
1fd6aef9c9 fix #1984 2016-10-17 08:27:06 +02:00
ThomasV
27b4a8dd51 move variable definitions at the top 2016-10-17 07:11:27 +02:00
ThomasV
5e92e09044 fix pubkey ordering in multisig wallets. fix #1975 2016-10-16 19:17:32 +02:00
ThomasV
4cc76c8a64 bump_fee: fix error message 2016-10-15 10:57:18 +02:00
ThomasV
7ea91dde2e do not expose network to wizard. update message in issue #1972 2016-10-14 14:05:24 +02:00
ThomasV
bab15a245b simplification (get rid of get_mnemonic) 2016-10-14 12:09:43 +02:00
ThomasV
6e58723328 fix #1968 2016-10-12 21:49:32 +02:00
ThomasV
e01e7d8562 fix: remove TextInputLayout 2016-10-12 15:26:23 +02:00
ThomasV
f8aaa4a50f hide seed options in a popup dialog. simplify seed_dialog classes 2016-10-12 15:00:10 +02:00
ThomasV
f0611c4569 fix pubkey indexing in imported wallets 2016-10-12 12:03:56 +02:00
ThomasV
834d3322b3 kivy: seed options dialog 2016-10-11 14:59:29 +02:00
ThomasV
082f8e50f2 minor fix in seed dialog 2016-10-11 11:21:08 +02:00
ThomasV
d12661a385 use the word 'extension' instead of 'passphrase' 2016-10-10 17:11:46 +02:00
ThomasV
e9f315ac6d fix #1609 2016-10-10 10:57:12 +02:00
ThomasV
c90b2497f5 in-place labels update (fix #1841) 2016-10-10 10:32:47 +02:00
ThomasV
1e55f4fda0 fix fee computation in sweep 2016-10-08 11:17:53 +02:00
ThomasV
f5380b3500 fix bugs in sweep dialog 2016-10-07 12:03:49 +02:00
ThomasV
21ad805010 fix #1953 2016-10-06 10:26:16 +02:00
ThomasV
df012e66ab fix #1948 2016-10-05 07:18:18 +02:00
ThomasV
e127fe6be5 fix: do not display hardware plugins in plugin menu 2016-10-02 17:54:00 +02:00
ThomasV
4788a10a8b fix message formatting 2016-10-02 11:46:47 +02:00
ThomasV
19cee0e6c0 slightly change seed warning 2016-10-01 17:46:26 +02:00
ThomasV
9afb0a9b46 add empty label to fix layout 2016-09-30 09:50:25 +02:00
ThomasV
6979cdc7d6 seed_input: minor layout improvement 2016-09-30 09:46:47 +02:00
ThomasV
94988bd3f7 follow-up previous commit 2016-09-30 01:19:29 +02:00
ThomasV
121ac07b01 wizard: add checkbox for passphrases. allow passphrases with 2fa seeds 2016-09-30 01:15:28 +02:00
ThomasV
f0ff73f0eb show wallet type in title bar 2016-09-29 09:40:27 +02:00
ThomasV
2e0d55e25e remove xpub icon 2016-09-28 21:31:47 +02:00
ThomasV
9509592767 new icon for xpub/xprv dialogs 2016-09-28 17:36:06 +02:00
ThomasV
52a9fdf6f6 wizard: fix restore multisig from seed 2016-09-28 17:03:02 +02:00
ThomasV
06c68a4be1 seed_type_label setVisible 2016-09-28 10:06:29 +02:00
ThomasV
749a1f2006 restore bip39 option for multisig, add a warning when option is clicked. 2016-09-28 09:53:17 +02:00
ThomasV
c934c5d55c tx window can show amount even if we are not synchronized 2016-09-28 08:45:22 +02:00
ThomasV
c05c49a18f fix fee slider offline bug 2016-09-28 08:11:59 +02:00
ThomasV
c32f75a313 wizard: display seed type. restore 2fa if needed 2016-09-28 06:30:00 +02:00
ThomasV
63a5e8f99b fix wizard line_dialog 2016-09-26 15:39:30 +02:00
ThomasV
4bc756751b improve wizard messages; skip choice screen if there is only one choice 2016-09-26 12:02:54 +02:00
ThomasV
da544794b7 improved message 2016-09-21 12:40:18 +02:00
ThomasV
a45095ef36 fix #1934 2016-09-21 11:28:59 +02:00
ThomasV
1e4cdab096 normalize passphrase 2016-09-02 10:20:04 +02:00
ThomasV
e7dd800875 tweak messages 2016-08-31 08:50:31 +02:00
ThomasV
ebab390b1a wizard: it is better to use a separate screen for passphrase 2016-08-30 09:51:53 +02:00
ThomasV
99a3250b3f wizard: show passphrase in the same window as the seed 2016-08-29 15:33:16 +02:00
ThomasV
8cb6ba992a wizard: set next_button focus 2016-08-28 10:47:12 +02:00
ThomasV
f98d1f43b4 do not propose passphrase option in 2fa wallets 2016-08-28 10:33:01 +02:00
ThomasV
6c1dae4b10 qt wizard: remove max size 2016-08-28 09:45:36 +02:00
ThomasV
bd3477cdb0 increase wizard window size 2016-08-28 09:43:22 +02:00
ThomasV
f7efedf8a0 query_info: raise if user cancelled 2016-08-26 12:26:43 +02:00
ThomasV
b907a668ec wizard: add derivation passphrase and bip39 support 2016-08-25 09:48:11 +02:00
ThomasV
808703bacb m 2016-08-25 06:43:27 +02:00
ThomasV
9366e37fb0 disable wizard.finished() 2016-08-23 16:14:41 +02:00
ThomasV
4781df9d21 wizard: scan hardware devices directly 2016-08-23 13:40:11 +02:00
ThomasV
63ebf7772e wizard.query_choice 2016-08-23 10:00:46 +02:00
ThomasV
c367cd64ad fix #1906 2016-08-20 17:33:12 +02:00
ThomasV
8423f8394f dynfees: set default 2016-08-20 09:16:03 +02:00
ThomasV
bfd7709ccd move xpubkey logic to keystore and fix it 2016-08-17 15:25:16 +02:00
ThomasV
f6e393d7b6 fix: import addresses and private keys 2016-08-17 10:39:30 +02:00
ThomasV
5733a5d125 importprivkey: do not import the same key twice 2016-08-17 09:49:58 +02:00
ThomasV
b51e71a681 fix: wallet.addresses 2016-08-16 10:53:26 +02:00
ThomasV
d9021788fa request account_id in wizard, for hardware wallets. cleanup bip44 code 2016-08-15 11:48:33 +02:00
ThomasV
b87c5d12fa - fix sign/verify messages
- fix hardware wallet tx_outputs
2016-08-14 13:03:52 +02:00
ThomasV
4f7169db6a fix issue #1892 (window geometry) 2016-08-12 13:09:16 +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
ThomasV
ecf398c95e fix display of 'payment sent' message (indentation has been broken in 8f91af2) 2016-08-02 12:03:53 +02:00
ThomasV
167dcbf624 wizard: cosmetic changes 2016-08-01 18:16:22 +02:00
ThomasV
7ee47491b3 updates for i18n translations 2016-08-01 10:04:11 +02:00
ThomasV
16db27ffc0 wizard: remove run_wallet 2016-07-31 10:59:42 +02:00
ThomasV
c6a46df158 fix issue #1853 2016-07-01 16:19:26 +02:00
ThomasV
342d6633a6 wizard: add capability to restore multisig 2016-07-01 11:44:26 +02:00
ThomasV
5bcadd6651 qt: fix account_expanded 2016-06-27 10:12:29 +02:00
ThomasV
c313c3c340 remove forgotten imports and print statements 2016-06-24 23:14:41 +02:00
ThomasV
e7d25faf02 Finish wizard unification 2016-06-24 23:02:54 +02:00
ThomasV
b6393cbdf2 display 'low fee' in tx dialog 2016-06-15 13:31:24 +02:00
ThomasV
dabeae9f95 multisig wizard: use sliders 2016-06-14 11:16:57 +02:00
ThomasV
6bc73f4d74 add is_final checkbox to bump_fee dialogs 2016-06-10 06:32:07 +02:00
ThomasV
9896718f09 get_tx_info: fix types 2016-06-09 18:10:13 +02:00
ThomasV
5af7139598 kivy: handle 'verified' event 2016-06-08 12:55:42 +02:00
ThomasV
7f7aa97e2e tx dialog: fix confirmation time estimate 2016-06-08 11:22:58 +02:00
ThomasV
b94a7920af factorize code used for tx dialogs 2016-06-08 11:06:51 +02:00
ThomasV
f2d2d61894 add expected confirmation time to tx dialog 2016-06-07 17:12:31 +02:00
ThomasV
017afd95dc Qt: disable max button if amount is locked 2016-06-07 11:38:23 +02:00
ThomasV
cb9a636616 fix #1768 2016-06-07 10:55:36 +02:00
ThomasV
1f8e6d38c8 qt: add tx preview button instead of option 2016-06-07 10:14:19 +02:00
ThomasV
a07a3f748e Qt GUI: let users type tx output in script language 2016-06-07 09:57:24 +02:00
ThomasV
85a411d5cf test if a donation address exists 2016-06-04 19:38:38 +02:00
ThomasV
9da2076328 fix: relayfee is per kb 2016-06-04 09:33:26 +02:00
ThomasV
bdb4958a34 for unconfirmed transactions, show fee sent by server 2016-06-02 11:39:18 +02:00
ThomasV
0843aaafb5 gat_wallet_delta: reverse sign of returned fee 2016-06-02 11:30:39 +02:00
ThomasV
403fbdd39e rename is_send -> is_mine 2016-06-02 10:40:16 +02:00
ThomasV
2cf4795250 dynamic fees: define fee levels using expected confirmation times 2016-05-31 20:26:09 +02:00
ThomasV
352cdd7f5a minor fix 2016-05-30 19:52:22 +02:00
ThomasV
599906eef6 show warning icon if unconfirmed tx has low fee. fixes 1798 2016-05-30 18:26:58 +02:00
ThomasV
bce42cb496 minor fix 2016-05-30 18:09:32 +02:00
ThomasV
6322714222 qt: minor fix 2016-05-30 16:10:25 +02:00
ThomasV
8680eae86f detect dangling links 2016-05-30 10:53:52 +02:00
ThomasV
fbb8b2ac6c simplify contacts tab 2016-05-30 08:13:30 +02:00
ThomasV
375be73894 qt: fix address dialog 2016-05-30 07:12:27 +02:00
ThomasV
1a46a795a5 detect non-final transactions, and transactions with unconfirmed inputs 2016-05-29 19:53:04 +02:00
ThomasV
2259b741f6 use address as key in contacts 2016-05-28 16:56:18 +02:00
ThomasV
1a8b12360b fix contacts_list 2016-05-28 16:34:08 +02:00
ThomasV
9e3314f17d move set_account_expanded 2016-05-28 16:00:28 +02:00
ThomasV
f7293694cc qt: minor fixes 2016-05-28 15:51:00 +02:00
ThomasV
d8fbc35d1e qt request list: minor fix 2016-05-28 07:43:01 +02:00
ThomasV
2afa6b5f36 add missing import 2016-05-28 00:04:06 +02:00
ThomasV
12dfccb3ab Define TreeWidget subclasses for lists
* move class code in separate files
* make menu column-dependent (fixes #1734)
2016-05-27 10:31:58 +02:00
ThomasV
0273936b07 Discretize fee levels (follow-up 3314b3a). Fixes #1753 2016-05-26 09:23:42 +02:00
ThomasV
0e7795f2a7 show/hide addresses tab in Qt GUI 2016-05-25 12:22:10 +02:00
ThomasV
be75b337aa help text for RBF button 2016-05-23 17:57:36 +02:00
ThomasV
f01f931e83 add extra checkbox for RBF 2016-05-23 17:34:33 +02:00
ThomasV
18a2498b76 show UTXOs in address tab 2016-05-23 11:52:38 +02:00
ThomasV
85aa633269 simplify wizard handling of hardware wallets. fixes #1793 2016-05-21 18:43:41 +02:00
ThomasV
0e853a6769 fee slider: use tooltips 2016-05-21 11:12:56 +02:00
ThomasV
fff8462f36 add explicit 'max' button to send tab. fixes #1428 2016-05-20 20:14:21 +02:00
ThomasV
3314b3acc7 Use dynamic fees by default, show fee slider in send tab, and discretize fee levels. 2016-05-20 15:30:39 +02:00
ThomasV
edb145e66a QT gui: add new tab to preferences dialog 2016-05-20 11:41:42 +02:00
ThomasV
bc1bef60a0 support Replace-By-Fee in GUI 2016-05-20 10:38:48 +02:00
Neil Booth
11ef0f5489 Properly disable the next button if no choices
Fixes 1793, 1786
2016-05-19 07:39:53 +09:00
Neil Booth
db1aa13015 Permit empty passphrases when creating HW wallet
They used to be confused as a user cancel.
Fixes #1788
Also fix Cancel pressed in passphrase dialog when *restoring*
a hardware wallet in install wizard; it used to be taken as an
empty passphrase.  Like the password dialog it now cancels the
wizard.
2016-05-07 10:40:12 +09:00
ThomasV
8e6e287802 make restore thread a daemon 2016-04-05 10:49:28 +02:00
ThomasV
7ea2a217cd fix issue #1748 2016-04-04 16:49:19 +02:00
The Phez
c1230cf270 Label colour - History Window
Set colour of label for outgoing transactions to match the colour of the
value field (red)
2016-03-25 10:01:48 -04:00
ThomasV
94dbfe6791 fix #1728 2016-03-20 19:05:38 +01:00
ThomasV
9659e8542d fix transaction parsing from command line 2016-03-16 10:31:33 +01:00
ThomasV
bca0f31fca coinchooser methods should not belong in wallet class 2016-03-10 16:37:45 +01:00
ThomasV
80b1b2716c kivy: open last wallet 2016-03-08 11:10:04 +01:00
Neil Booth
467b0c0973 tx_dialog: make a deep copy of the tx
I've confirmed this
Fixes #1690
2016-02-28 19:10:09 +09:00
ThomasV
96f144eb03 make sure the broadcast tx thread always times out 2016-02-25 08:55:06 +01:00
ThomasV
305843999e Relicensing 2016-02-24 10:20:30 +01:00
ThomasV
b53a54cded remove bmp.py; use Qt instead 2016-02-23 15:27:00 +01:00
ThomasV
41f6fec2ac kivy: set_paid for paid invoices 2016-02-19 13:53:01 +01:00
ThomasV
f1822a9603 pending->unconfirmed 2016-02-15 19:50:44 +01:00
ThomasV
04c7d2b455 add 'donate to server' menu item 2016-02-15 16:17:07 +01:00
Neil Booth
5f590c9c64 2 fee colour fixes
update_fee() if removing an item from send_from
update not_enough_funds when pressing !
2016-02-13 15:40:34 +09:00
ThomasV
cc526a8734 tx dialog: don't use tx.raw 2016-02-12 15:20:34 +01:00
Neil Booth
061152245e Merge branch 'no_force_wo' 2016-02-08 18:58:23 +09:00
Neil Booth
c41e694534 show_seed_dialog: return if user cancels p/w input
Update stale comment.
2016-02-07 18:05:24 +09:00
Neil Booth
6b9d12e369 Tweak tooltip 2016-02-07 17:51:56 +09:00
Neil Booth
9490debf0f hw_wallet: don't make watching only if cannot pair
Instead issue a warning.  Being watching-only disables
various functionality that should instead just ask again
for the PIN to be input.
2016-02-07 17:38:34 +09:00
Neil Booth
bb3de0eb63 change_password_dialog: remove redundant check
This is guaranteed False by wallet.can_change_password()
2016-02-07 16:45:29 +09:00
Neil Booth
5c2c7b1557 trezor: create new accounts in non-GUI thread 2016-02-07 15:15:58 +09:00
Neil Booth
16397b1ed7 trezor: more user friendly when cannot connect
Tell the user and ask if they want to try again.  If they
say no, raise a silent exception.  Apply this more friendly
behaviour to the install wizard too (see issue #1668).
2016-02-06 19:51:39 +09:00
Neil Booth
4ea9518aef QT install wizard: catch general exceptions
and show an error before re-raising and exiting.  Improvement on
prior.
2016-02-06 15:13:27 +09:00
ThomasV
6faac2ca36 My Requests -> Requests 2016-02-04 11:49:12 +01:00
ThomasV
2a507b91c1 fix #1666 2016-02-03 10:29:31 +01:00
ThomasV
3ee61c4c6e define wallet.dummy_address method 2016-02-02 19:56:34 +01:00
ThomasV
5aa0a87d7a trustedcoin: restore the display of fees 2016-02-02 16:26:47 +01:00
Neil Booth
274d91fd6e watching_only: warn after showing main window 2016-02-01 07:45:16 +09:00
Neil Booth
ab488b566b warn_if_watching_only: don't call twice 2016-02-01 07:42:53 +09:00
Neil Booth
e61fffab55 Trezor/KeepKey: force watching only improvements
Only warn about watching only once given a chance to pair.
Failure to pair makes watching-only and warns.
In error message to user, distinguish between failure to connect
and failure to pair.
2016-01-31 19:36:21 +09:00
Neil Booth
69da96feb4 The daemon stops the wallet threads now 2016-01-31 14:38:16 +09:00
Neil Booth
58d5215e2e No need to pass daemon and network together
The daemon has the network
2016-01-29 22:25:59 +09:00
ThomasV
08e5aecee2 Revert "Plugins: remove init_qt hook; clean up"
This reverts commit e20369bf94.
2016-01-28 14:57:59 +01:00
Neil Booth
9fa8c4de27 Installwizard: not app-modal on MacOSX
Making a window with no parent window-modal on Mac makes it
application-modal.  This is different to behaviour under X, and
we don't want that.  Use QDialog instead.
2016-01-27 22:10:34 +09:00
ThomasV
fe9ec6de06 reformatting 2016-01-26 13:51:47 +01:00
ThomasV
9b09c55356 dynamic fees: use hardcoded value as upper bound 2016-01-25 16:46:50 +01:00
Neil Booth
c0295c767e tx_dialog: prompt if signed but not saved
I've lost a signed TX one too many times now
2016-01-25 19:26:02 +09:00
Neil Booth
60be9d59bc Fix prior; scale is off-by-50 2016-01-24 21:29:02 +09:00
Neil Booth
c02e3621f3 Settings: improvements to dynamic fee slider
Fixes #1595
2016-01-24 20:58:00 +09:00
Neil Booth
e20369bf94 Plugins: remove init_qt hook; clean up
Fixes #1644
2016-01-24 20:14:08 +09:00
Neil Booth
f8ed7b058d Improved multi-device handling
Ask user which device to use when there are many.  If there
is only one skip the question.  We used to just pick the
first one we found; user had no way to switch.

We have to handle querying from the non-GUI thread.
2016-01-24 13:41:03 +09:00
Neil Booth
38a8385287 Remove stale comment 2016-01-23 16:52:24 +09:00
Neil Booth
9f95e90706 Remove wrong code
The correct line is 3 below
2016-01-23 16:26:37 +09:00
Neil Booth
f92843bb10 Top level window fix for tx_dialog and h/w wallets 2016-01-23 16:06:32 +09:00
Neil Booth
618026f96c Installwizard: tweak hardware wallet handling 2016-01-22 22:16:58 +09:00
Neil Booth
1f75ab89fa Installwizard: handle Escape key 2016-01-22 21:36:10 +09:00
Neil Booth
95a0cbabfd Add a note regarding hardware wallets 2016-01-22 21:07:41 +09:00
ThomasV
858b9c5655 kivy: improve settings dialog 2016-01-21 12:12:55 +01:00
Neil Booth
eebabdf209 Merge branch 'client_thread' 2016-01-19 21:01:46 +09:00
ThomasV
4122c108fc plugins: enable & disable methods 2016-01-19 10:03:05 +01:00
Neil Booth
9ab9c73d6d Threaded wallet creation 2016-01-18 07:33:04 +09:00
Neil Booth
b32a34b8ba Threaded message signing 2016-01-18 07:33:04 +09:00
Neil Booth
ef2c472739 Threaded decryption 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
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
e2627e0944 QMessageBox is a top-level window 2016-01-17 19:40:05 +09:00
Neil Booth
144f53be18 Use TaskThread to simplify ThreadedButton
And improve labels dialog
2016-01-17 16:13:32 +09:00
Neil Booth
c714acf739 Add TaskThread, use to simplify WaitingDialog
This will be useful as a client thread for hardware wallets
2016-01-17 15:47:08 +09:00
Neil Booth
d9a84875dc Fix prior; keep tx dialog as top-level window 2016-01-17 13:41:09 +09:00
Neil Booth
d9a13a5dd1 transaction_dialog: don't override base class
Rename parent to main_window.  Make the main window our parent.
2016-01-17 13:36:40 +09:00
ThomasV
3574ade484 fix #1635 2016-01-17 02:56:52 +01:00
ThomasV
eb085c2e23 Clarify preferences dialog:
* rename 'Oldest First' policy as Priority
 * show multiple change and fee multiplier on separate lines
2016-01-15 09:02:03 +01:00
Neil Booth
6bf91b8ae2 Update comments and tooltips. 2016-01-15 15:25:01 +09:00
Neil Booth
53fa973898 Move change_amounts() to base class.
Update tooltip of the preference.
2016-01-15 15:21:25 +09:00
Neil Booth
641f23229d Add multiple change output preference
Limit to 3 if enabled.
2016-01-15 14:54:26 +09:00
ThomasV
0d52911561 define constants for tx output types 2016-01-14 17:15:50 +01:00
ThomasV
b5313ce17d follow up da8fce1914 2016-01-14 16:23:12 +01:00
Neil Booth
bda9adc01f Close install wizard when cancelled from menu 2016-01-13 22:50:25 +09:00
Neil Booth
889c4cb7fb Multisig: create and restore work
Override run in derived class to catch UserCancelled again
Restore self.finished() hook.
Fix a typo.
2016-01-13 22:38:32 +09:00
Neil Booth
6178f5a28f Fix some more regressions and trustedcoin plugin 2016-01-13 22:25:40 +09:00
Neil Booth
fd66e15d3d Fix some regressions from layout rework. 2016-01-13 21:25:48 +09:00
Neil Booth
9390a97e9e Bring the network dialog into the new framework 2016-01-13 21:11:06 +09:00
Neil Booth
4c9b224d4c Put open_wallet back as class method. 2016-01-13 20:56:44 +09:00
Neil Booth
cb8bc4ec73 Bring query_choice into the new framework. 2016-01-13 19:49:58 +09:00
ThomasV
632905dfbe instantiate wizard only if needed 2016-01-13 11:27:17 +01:00
Neil Booth
0219687d41 Some work on multisig. 2016-01-13 19:20:58 +09:00
Neil Booth
576500aa29 Embed generating addresses text 2016-01-12 23:36:25 +09:00
Neil Booth
f94d2db9a4 Embed password dialog. 2016-01-12 23:32:13 +09:00
Neil Booth
2ae3543dc4 Start work on persistent install wizard 2016-01-12 22:31:53 +09:00
Neil Booth
f7b39f4952 A different approach to d5aa646
Only clean up the MainWindow once.
2016-01-12 20:19:21 +09:00
Neil Booth
d5aa6466c9 Be careful removing windows from the list
I've occasionally had Python throw saying the window
isn't in the list.
2016-01-11 22:32:19 +09:00
Neil Booth
45f518e191 Improve Master Public Keys dialog
- Put the radio buttons inside the group box
- Share more code between the have-group-box and not cases
- Use ChoicesLayout
- Don't use cosigner terminology unless it's a Multisig wallet
2016-01-11 12:31:45 +09:00
Neil Booth
384b8cd5f2 Install wizard: simplify create_or_restore
- Use ChoiceLayout to organize the layouts
- Do wallet filtering in wizard.py as it's GUI independent.
- Only pass the descriptions.
2016-01-10 23:00:59 +09:00
ThomasV
85b48191da formatting (unneeded spaces) 2016-01-10 14:22:33 +01:00
Neil Booth
637164d335 Introduce BIP32_RD_Wallet
Represents a BIP_32 wallet with a root derivation.
This permits us to see address derivation for NewWallet types
in the QT Gui.
2016-01-10 20:20:04 +09:00
Neil Booth
81d641a13f Show BIP32 path for BIP32_HD_Wallet classes
from right-click Show Public Keys menu.

Fixes #1598
2016-01-10 14:53:00 +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
83cc5e2001 Fix top level window issue on Mac
Better, more generic fix superseding prior two patches.
2016-01-10 12:56:12 +09:00
Neil Booth
56bc717da1 Encrypt / decrypt: use top level window
Show errors on top level window, otherwise MacOSX gets stuck.
2016-01-10 12:42:47 +09:00
Neil Booth
b97c2857e0 Fixes for message sign and verify
base64 can throw which caused silent verification failures.
Ask for passwords with correct parent window otherwise dialog
not visible on MacOSX.  Similarly for verification messages.
2016-01-10 12:35:29 +09:00
ThomasV
9ad4d63ad1 wizard: small tweaks, fix show_restore 2016-01-09 10:35:10 +01:00
Neil Booth
2377476207 Separate out new QT util ChoicesLayout
For future use elsewhere
2016-01-09 15:38:27 +09:00
Neil Booth
3e8598c245 Move trezor-specific install wizard code to plugin 2016-01-09 15:21:38 +09:00
Kefkius
d29fd4d9d1
Use info message box for Pay-To-Many instructions 2016-01-08 05:00:15 -05:00
ThomasV
5915b9b7e1 restore action-driven wizard logic 2016-01-07 00:55:23 +01: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
97c443a86d use a wallet-owned dummy_address, to minimize risk of losses. This was removed in 11d135b without explanation 2016-01-06 09:36:13 +01:00
ThomasV
f49f538315 Revert "Use a real dummy address"
This reverts commit 9ed987c2da.
2016-01-06 09:26:29 +01:00
ThomasV
62868ab29a Register loaded wallets in daemon, to prevent a wallet from being opened twice.
Simplify the wizard logic.
2016-01-06 00:58:43 +01:00
Neil Booth
9ed987c2da Use a real dummy address
Fixes #1599
2016-01-04 17:54:23 +09:00
ThomasV
6210c61eb6 fix #1597 2016-01-03 17:47:02 +01:00
Neil Booth
0c80ca8457 Get rid of timer_actions hook
Nothing uses it.  In the unlikely event we need it back, we
should call it qt_timer_actions instead as it is QT-only and
runs in the QT GUI thread.
2016-01-03 20:56:13 +09:00
Neil Booth
1ffc14df76 Force OK button to be default
Until we work out the right way to use the stacked dialogs.
2016-01-03 20:09:05 +09:00
Neil Booth
87363c8301 Trezor: Implement resetting a device 2016-01-03 13:34:03 +09:00
Neil Booth
13154d4ce7 Fix import in main_window.py 2016-01-03 11:20:22 +09:00
Neil Booth
40ae744c1e Fix show_error inheritance issue 2016-01-03 11:18:20 +09:00
Neil Booth
6e660f562f Change inheritance order in installwizard.py
Also put back set_layout.  This is causing two things:

a) on MacOSX the next / cancel buttons vanish if in one position
b) on all O/Ses the Next button is not the default

We're obviously abusing StackedLayout in an unintended way.
2016-01-03 10:39:44 +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
9aae66a9d2 Move set_layout call
This code is identical to before, but for some reason the positioning
of this affects whether Next is the default action or not!

And it didn't have that effect with the old install wizard.  Odd.
2016-01-03 09:32:41 +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
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
12f62212ba Move wallet_kinds to the base class
This logic isn't gui-dependent so belongs in wizard.py
2016-01-02 00:35:09 +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
441b695815 Break out logic into a function 2015-12-31 12:16:32 +09:00
Neil Booth
3df8d11f1a Pass the gui object to the install wizard 2015-12-31 12:09:23 +09:00
Neil Booth
bcabfaeccb Move install wizard invocations to one place
Fixes bugs whereby install wizard invoked from the GUI was missing
various things, such as updating recently used list, setting up
timers, etc.
2015-12-31 12:02:16 +09:00
Neil Booth
93d05e8cfe Have close_wallet hook take a wallet. 2015-12-31 10:31:49 +09:00
Neil Booth
1d51335827 Remove need for self.wallet for h/w wallets 2015-12-30 17:03:26 +09:00
Neil Booth
e0aab69e67 Better handling of watching only
Avoid unnecessary message at startup.
It can now be dynamic and menus, title bar update properly.
2015-12-28 22:51:50 +09:00
Neil Booth
8f91af28a5 More cleanup of WaitingDialog
Simplify its interface
2015-12-26 11:18:32 +09:00
Neil Booth
a58c19d7c0 Clean up and fix account adding
As per BIP44, 20 addresses are checked for transactions, not just the
first one.
Show the last account only if used or named.
If all accounts are used, prompt for password to create new one.

Fixes #1128
2015-12-25 23:34:04 +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
37a49752eb Fix greenaddress modality and centring issues 2015-12-23 20:13:17 +09:00
Neil Booth
0ecf2565ce MessageBoxMixin-related cleanup 2015-12-23 20:05:09 +09:00
Neil Booth
6f4d4b9a1e Modality and centring fixes for QR codes 2015-12-23 18:42:01 +09:00
Neil Booth
9484b6371f More modality fixes and cleanups 2015-12-23 18:31:36 +09:00
Neil Booth
37b474716b Window modality fixes + improved password dialog 2015-12-23 17:32:08 +09:00
Neil Booth
62201b37f5 MacOSX fix
If these lines are the other way round, the buttons don't appear
on MacOSX!
2015-12-23 15:23:35 +09:00
Neil Booth
15e9991e2a Move message box logic to a mixin 2015-12-23 15:10:15 +09:00
Neil Booth
72fdf0cd21 Better error when opening a non-wallet file
Also window modality fixes for __init__.py
2015-12-23 13:54:43 +09:00
Neil Booth
1afb644203 Fix call to get_wallet_folder 2015-12-23 13:42:35 +09:00
Neil Booth
21e4a30371 Modality fixes for critical errors 2015-12-23 13:39:20 +09:00
Neil Booth
57d4b27696 Fix a bunch more modality issues for message boxes 2015-12-23 13:21:13 +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
0f431b23eb Make more dialogs window-modal 2015-12-23 11:52:36 +09:00
Neil Booth
4c36987845 Change password QT dialog window modal 2015-12-22 23:09:09 +09:00
Neil Booth
7437746cd2 Network dialog -> window modal
Clean up imports
2015-12-22 22:23:51 +09:00
Neil Booth
5c1828e03d Install wizard -> window-modal, fix missing import 2015-12-22 22:18:59 +09:00
Neil Booth
68da937e89 Address history dialog -> window modal 2015-12-22 22:11:37 +09:00
Neil Booth
d98451f114 Make more dialogs window modal 2015-12-22 22:05:27 +09:00
Neil Booth
6442dd59ad Make two more dialogs window-modal 2015-12-22 08:02:01 +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
Neil Booth
8598f9ef9c Permit sweep of private keys for watch-only wallet
Fixes #1585
Warn user if watching-only.
Introduce new helper class WindowModalDialog and use it in a couple
of places.  This is better than process-modal dialogs for our
multi-window daemon setup.
2015-12-21 23:52:48 +09:00
Neil Booth
2226667437 QT: Stop timer cleanly to avoid exceptions on exit 2015-12-20 16:15:33 +09: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
9d3162b1a1 simplify get_label 2015-12-15 12:52:30 +01:00
Neil Booth
e9d0dd578a Put coin selection combo at bottom 2015-12-12 18:26:58 +09:00
Neil Booth
1524fa29af Raise dialog width slightly. 2015-12-12 18:20:49 +09:00
Neil Booth
36aaad392d Fix docstring display. 2015-12-12 18:11:07 +09:00
Neil Booth
34955bd0f5 Show value if available 2015-12-12 17:52:19 +09:00
Neil Booth
f3a7d3f2bf Show amount of inputs too. 2015-12-12 09:41:31 +09:00