SomberNight
dc999aa948
wizard: enable_keystore: fix for multisig
...
regression from 66c0fec1ea
2025-08-15 20:52:49 +00:00
SomberNight
14494c13dc
qt wizard: start: merge "start_viewstate" and "initial_data"
2025-08-15 20:46:24 +00:00
SomberNight
43987c5ca0
wizard: make start() kwarg-only
...
I want to see where initial_data arg is actually set from.
Looks like hardly anywhere(?)
It is really hard to see because the wizard is crazy-dynamic, there's polymorphism and mixins everywhere.
2025-08-15 20:35:29 +00:00
Sander van Grieken
e1d5d803e9
wizard: fix missing 'wallet_password' and 'wallet_password_hardware' views on abstract KeystoreWizard
...
(these were implicitly defined by the Qt subclass) and test wallet keystore enable.
2025-08-13 16:25:01 +02:00
Sander van Grieken
4eccfdaa99
wizard: add script and derivation to keystorewizard flow. fixes #10063
2025-08-13 11:37:57 +02:00
SomberNight
acc52e392c
tests: wizard: imported addrs: validate each addr with "is_address()"
...
This was already done *in the GUIs*, but the backend should definitely
do at least sanity-check-level validation like this.
2025-08-12 18:42:35 +00:00
SomberNight
729003e557
wizard: move hw_unlock to base cls, and add test_wizard unlock_hw test
2025-07-21 03:33:43 +00:00
SomberNight
b0464cc934
refactor 'init_wallet_wizard' hook a bit. add test_wizard trezor test
2025-07-21 02:40:17 +00:00
SomberNight
e0d67524a1
tests: test_wizard: set wallet password and yes/no encrypt file
2025-07-21 00:07:23 +00:00
SomberNight
a3dde40c69
test: test_wizard: add "old" electrum seed tests, and bip39+seed_ext
2025-07-20 23:26:09 +00:00
f321x
290da21187
qml: change wizard passphrase flow
2025-07-15 00:19:25 +02:00
f321x
bb5b1b3932
wizard: move pasphrase flow from Qt into Abstract Wizard
...
moves the separate passphrase flow logic from Qt into the Abstract
Wizard base class so the same flow can be shared between Qt and QML
2025-07-11 16:39:31 +02:00
ThomasV
04da854291
follow-up 49d2f87dcf
2025-05-28 10:46:00 +02:00
ThomasV
49d2f87dcf
wizard: make NewWalletWizard inherit from KeystoreWizard
2025-05-28 10:20:15 +02:00
ThomasV
df4bbf1d72
KeystoreWizard: fix regression (follow-up e1ac476bcf)
2025-05-26 17:11:37 +02:00
ThomasV
e1ac476bcf
KeystoreWizard: support seed extension
2025-05-26 10:35:41 +02:00
ThomasV
51ced92f44
Qt: let user enable/disable keystores with seed or hw wallet
2025-05-24 11:18:07 +02:00
ThomasV
45c35c0b00
allow password encryption in hardware wallets
2025-05-23 18:42:54 +02:00
Sander van Grieken
82e3932aaf
network: add oneserver/auto_connect both enabled checks, avoid connecting to random/multiple servers
...
if oneserver is enabled.
2025-05-19 18:07:29 +02:00
Sander van Grieken
1dfe2ccec0
qml: show option for single server in ServerConfig
2025-05-19 18:07:29 +02:00
SomberNight
151b64da84
wizard: "terms of use": add version number
...
follow-up https://github.com/spesmilo/electrum/pull/9794
2025-05-07 13:59:00 +00:00
f321x
802c316edb
qt: show terms of use as first window on setup
2025-05-07 14:02:40 +02:00
ThomasV
8c028f7528
Add/remove plugins from GUI
...
- both internal and external plugins require GUI install
(except internal HW plugins, which are 'auto-loaded' and hidden)
- remove init_qt hook
- in Qt, reload wallet windows if plugin enabled/disabled
- add 'uninstall' button to PluginDialog
- add 'add plugins' button to wizard hw screen
- add icons to the plugin list
2025-04-15 08:35:10 +02:00
Sander van Grieken
fea598cfbe
network: create ProxySettings class replacing dict and encapsulating proxy related funcs,
...
allow enable/disable proxy without nuking proxy mode, host and port (explicit enable_proxy config setting),
move tor probe from frontend to backend code, add probe buttons for Qt and QML
2025-03-04 14:23:33 +01:00
Sander van Grieken
fd12668da4
qt: additional validation for master keys in WCHaveMasterKey in wallet wizard
2024-10-28 14:30:56 +01:00
Sander van Grieken
4a37668b01
wizard: don't require seed extension to be set early.
...
this also fixes deferring multisig constraint validation when seed is same as another cosigner,
but still can have different seed extension
2024-10-24 16:07:00 +02:00
ThomasV
d0693c311f
new wizard: set keystore password. fixes #9147
2024-07-22 10:53:39 +02:00
SomberNight
a2d5e31838
mnemonic: rename seed_type() fn
...
Some functions have an argument named "seed_type" in which it was annoying to call the seed_type() fn.
(especially for functions inside the same module)
2024-06-10 20:00:52 +00:00
SomberNight
b95fbbb86f
wizard: fix regression: allow passphrase for some '2fa' seeds
...
fixes https://github.com/spesmilo/electrum/issues/9088
2024-06-10 19:35:56 +00:00
Sander van Grieken
b11d0062e8
wizard: log state when view not defined. ref #8815
2024-03-01 10:56:32 +01:00
Sander van Grieken
d6ea2f1e30
wizard: log state when view not defined. ref #8916
2024-03-01 09:07:04 +01:00
SomberNight
b4712397cc
logging: (trivial) use repr() of seed_type
...
for more obvious empty string
related: https://github.com/spesmilo/electrum/issues/4326#issuecomment-1903747632
2024-02-22 11:45:18 +00:00
ghost43
7da3613b12
Merge pull request #8906 from accumulator/old_2fa_passphrase
...
wizard: skip/hide passphrase option for 'old' and '2fa' seeds (see #4326 )
2024-02-21 17:03:43 +00:00
Sander van Grieken
8ce1e6453b
wizard: skip/hide passphrase option for 'old' and '2fa' seeds (see #4326 )
2024-02-21 17:15:10 +01:00
SomberNight
8ab3dcce5d
keystore: API changes for from_seed/from_bip43_rootseed/bip39_to_seed
...
- force kwargs
- add type hints
2024-02-21 15:08:19 +00:00
SomberNight
46ce5d0f3d
wizard: (trivial) follow-up prev
2024-02-13 14:52:52 +00:00
SomberNight
638fdf114e
wizard: don't log sensitive values: replace blacklist with whitelist
...
- blacklist was missing yet another item "multisig_master_pubkey"
- let's just do a whitelist. a blacklist is too risky for my liking here.
2024-02-13 13:51:53 +00:00
SomberNight
acae6751d2
wizard: do not log sensitive data (add more keys, again)
...
frankly this blacklist approach seems too fragile...
2024-01-31 11:23:45 +00:00
Sander van Grieken
82c21bc30d
wizard: take hardware_device from correct location for cosigners. fixes #8808
2024-01-16 11:45:20 +01:00
SomberNight
683c6083c9
wizard: do not log sensitive data (add more keys)
2024-01-05 15:14:33 +00:00
Sander van Grieken
ebcecdccce
qt,qml: add checkboxes for advanced network config on welcome page, remove separate proxy-ask and autoconnect pages
2023-12-21 11:17:48 +01:00
Sander van Grieken
5e39ff49bc
add missing accept handler for welcome page
2023-12-19 18:49:16 +01:00
Sander van Grieken
a03b2d7bae
qt,qml: add a welcome page as initial page for server connect wizard
...
This is much less intimidating than asking if the user wants to use a proxy
out of the gate.
2023-12-19 18:49:16 +01:00
ghost43
e814fa0b25
Merge pull request #8719 from SomberNight/202312_db_seedtype
...
wallet db: deduplicate "seed_type" field
2023-12-12 01:01:30 +00:00
Sander van Grieken
b87d091a6d
qt, qml: allow BIP39 seeds which fail checksum or wordlist ( fixes #8720 )
...
removes verifySeed from qebitcoin as this code was 99% duplicate of wizard.validate_seed
2023-12-06 16:12:57 +01:00
SomberNight
f7cb523b9d
wallet db: deduplicate "seed_type" field
...
In the db, the 'seed_type' field could be present both at the top-level and inside keystores.
Note:
- both fields had usages
- the top-level field was added in 2.8 re "initial segwit support" (3a64ec0f2e )
- there was no db upgrade for it, so older files are missing it
- if present, valid values can be electrum types but also
other types supported by the wizard, e.g. "bip39"
- the keystore-level field was added in 4.1 (7b7bba2299 )
- there was a db upgrade when it was introduced, so old files also have it
- if present, valid values can only be electrum types
- there is not much value in the top-level one having a non-electrum value,
and those values were never used by other parts of the code
- note that when creating a standard wallet from a bip39 seed, the seed is discarded.
Only the derived xprv and the derivation path are kept. If we changed this and also kept the seed,
e.g. to display it to the user, then it would make sense to save the seed type (e.g. "bip39").
However storing that seed_type would make more sense at the keystore level (not top-level).
We delete the top-level 'seed_type' field.
```
{
"keystore": {
"seed_type": "segwit",
...
},
"seed_type": "segwit",
...
}
```
2023-12-01 18:43:37 +00:00
SomberNight
564b6c29b7
wizard: fix self._logger vs self.logger
...
AttributeError: 'QENewWalletWizard' object has no attribute 'logger'
2023-10-30 18:16:00 +00:00
ThomasV
56e80c20d7
wallet_db upgrade: do not use '/' in StoredDict keys
2023-09-23 11:05:36 +02:00
ThomasV
68159b3ef6
walletDB: replace 'manual_upgrades' parameter with 'upgrade', with opposite semantics
2023-09-22 15:02:07 +02:00
Sander van Grieken
44a1595157
wizard: don't use hww encryption of wallet files for anything besides standard wallets,
...
check hw wallet file decrypt in WCHWUnlock,
fix assumption 'wallet_type' exists in wallet open scenario.
2023-09-21 14:20:01 +02:00