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
b545f4ef12
kivy: EmptyLabel
2016-01-16 16:47:48 +01:00
ThomasV
d68f42df95
add qr code scanner to kivy wizard
2016-01-16 15:05:49 +01:00
ThomasV
cd6ec773c9
kivy: pass message to restore dialog, and remove dead code.
2016-01-16 12:44:59 +01:00
ThomasV
5be9f03fdf
kivy: improve wizard
2016-01-16 12:01:37 +01:00
ThomasV
06809917ca
kivy wizard: simplifications and renaming
2016-01-16 09:30:11 +01:00
ThomasV
1144afefb5
kivy: rm ChangePasswordDialog
2016-01-16 09:18:20 +01:00
ThomasV
f6661fdd2c
kivy: simplify install wizard
2016-01-15 17:45:08 +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
d57af0db33
Revert "Fix 'need more than 2 values to unpack' error."
...
This reverts commit 812399f51d
.
2016-01-14 16:32:09 +01:00
ThomasV
b5313ce17d
follow up da8fce1914
2016-01-14 16:23:12 +01:00
ThomasV
5cb18f95de
kivy: minor wizard fix
2016-01-13 21:26:54 +01:00
ThomasV
0464a1a6b0
remove gtk gui
2016-01-13 15:29:04 +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
ThomasV
5f0a7db598
kivy: password dialog and wizard fixes
2015-12-20 17:37:07 +01: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
ee4ccd9b1b
kivy: move wallets dialog
2015-12-18 15:03:38 +01:00