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
ThomasV
0cef063ee2
add payment requests to kivy
2015-12-11 15:21:21 +01:00
Neil Booth
75b3ecee49
Add coin chooser to try and minimize loss of privacy.
2015-12-09 22:20:23 +09:00
ThomasV
84b18e0949
qt: save last active window, not last opened window
2015-12-05 16:53:56 +01:00
ThomasV
e9ee851bb2
fix: set auto_connect in installwizard
2015-12-03 23:50:50 +01:00
ThomasV
6ec610c359
kivy updates
2015-12-02 12:11:28 +01:00
Neil Booth
e190024f73
Only pass a fixed fee if it was user-specified.
...
Otherwise we inadvertently fix the fee at the prior calculated one,
which isn't what we want
2015-11-29 23:14:40 +09:00
ThomasV
19533dda15
load wallet in ElectrumWindow constructor
2015-11-24 12:10:43 +01:00
ThomasV
f09d80459d
fix #1564
2015-11-24 11:13:48 +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
53f6fb9876
Add a GC debugger
...
Add commented-out GC debugging step
2015-11-14 10:47:44 +09:00
Neil Booth
50755d7db3
Use weakref for tabs in QShortCut lambdas
...
Unfortunately we have no way to directly destroy or remove the
lambdas embedded in the QShortcut objects, so this is the
only solution to avoid leaking references. As the QShortcut
objects have the window as parent, they are destroyed with the
window so dangling refs to the destroyed window can't happen.
This and 91349d109e
fix #1549 .
2015-11-14 10:35:29 +09:00
Neil Booth
91349d109e
Add explanatory comment.
2015-11-13 23:42:46 +09:00
Neil Booth
ae4cfc9f0b
Unregister network callbacks from QT gui
...
Rework the callback system in QT to make this easy, and avoid
leaking window references that prevent the window from being
GC-ed on close
2015-11-13 23:36:29 +09:00
Neil Booth
51ebdc5ce8
Remove another non-existent callback
2015-11-12 15:33:58 +09:00
ThomasV
55fafc35c1
fix json_encode with python console
2015-11-09 16:09:57 +01:00
Neil Booth
7b40b63a3d
Refresh all amount edits when units change.
...
Improved version of prior commit.
2015-11-09 20:06:36 +09:00
ThomasV
386319b015
clear send fields if unit setting is changed
2015-11-08 00:00:11 +01:00
ThomasV
798664e299
remove minimum window size
2015-11-06 17:13:11 +01:00
ThomasV
55494e4224
save window geometry in wallet file, since the GUI can open several windows
2015-11-02 15:53:31 +01:00
ThomasV
4a7c7a6616
installwizard: do not start in offline mode when disconnected ( fix #1531 )
2015-11-02 12:58:47 +01:00
ThomasV
77d6ee74f9
revert PR #1492 . clear clipboard instead
2015-10-31 11:48:37 +01:00