Commit Graph

100 Commits

Author SHA1 Message Date
Sander van Grieken 8ce1e6453b wizard: skip/hide passphrase option for 'old' and '2fa' seeds (see #4326) 2024-02-21 17:15:10 +01:00
Sander van Grieken 0a6b2d521b qml: move final wizard submit() to WizardComponent.finish handler 2024-02-05 11:13:58 +01:00
accumulator 019baa5a71 Merge pull request #8862 from SomberNight/202401_qml_wizard_final_accept
qml wizard: run navmap[view]['accept'] handler a final time on finish
2024-02-05 10:46:22 +01:00
SomberNight 07dc80dd9a qml wizard: stricter validation for new wallet name
user on bitcointalk [0] tried to create wallet with name "w/o 2FA".
Before this, one would only get an error after the last page of the wizard.
With this, the "Next" button does not even get enabled if the name does not look ok.
(and as in comment, maybe we should be even stricter re what is allowed)

[0]: https://bitcointalk.org/index.php?topic=5483514.msg63584789#msg63584789
2024-02-04 08:54:40 +00:00
SomberNight 48a96f6776 qml wizard: run navmap[view]['accept'] handler a final time on finish
For example, see
https://github.com/spesmilo/electrum/blob/061c8211281d6c0b50166e4075656ce0fb2c89f5/electrum/plugins/trustedcoin/trustedcoin.py#L624
Even if navmap[view]['last'] is True, we still want the navmap[view]['accept'] handler to run.

fixes https://github.com/spesmilo/electrum/issues/8861

---

Note that an analogous issue does not exist for the desktop qt gui,
see https://github.com/spesmilo/electrum/blob/061c8211281d6c0b50166e4075656ce0fb2c89f5/electrum/gui/qt/wizard/wizard.py#L206
There, wizard.resolve_next is called regardless of is_last.
2024-01-31 12:59:47 +00:00
SomberNight cb55c65677 qml wizard: WCWalletPassword: show warning if pw is too short 2024-01-31 10:28:10 +00:00
SomberNight 67b57da402 qml: WCHaveMasterKey: (fix) re-verify text in onTextChanged
fixes https://github.com/spesmilo/electrum/issues/8853

This is a bit ugly, but activeFocus is declared as final and cannot be overridden directly...
```
  1.42 | W | gui.qml.qeapp | file:///home/user/wspace/electrum/electrum/gui/qml/components/controls/ElTextArea.qml:23:5: Cannot override FINAL property
```
2024-01-30 02:11:01 +00:00
Sander van Grieken 92bff08ba5 qml: don't use predictive text for fields where it makes no sense 2023-12-29 16:18:03 +01: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
SomberNight 3b5b75325e qml: WCServerConfig.qml: only disable autoconnect if given server
if the user entered the server select screen and immediately clicked next,
a random server would get set but with auto_connect disabled.
2023-12-19 16:43:59 +00:00
Sander van Grieken 4c8287358a qt, qml: remove email entry from 2FA wallet ToS pages 2023-12-08 12:07:03 +01: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 b18f9570fc qml wizard: fix creating imported wallet from camera: concat with space
The parser expects the list of keys/addrs to be whitespace-separated (no commas).
Same as line 61.
2023-11-24 20:48:04 +00:00
Sander van Grieken a57a0d001b qml: make TextAreas more visible 2023-11-15 18:42:11 +01:00
Sander van Grieken 98264f64ad qml: introduce PasswordStrengthIndicator control, and add to PasswordDialog and WCWalletPassword 2023-11-10 09:30:31 +01:00
Sander van Grieken 8b567ae447 qml: remove all QML imports version numbers 2023-11-07 10:17:08 +01:00
Sander van Grieken eb676b3dc1 qml: don't show error when textfield is empty, don't log error when optional propert is undefined 2023-10-23 15:30:56 +02:00
Sander van Grieken 9ed5f7bf43 qml: don't show "select server automatically" checkbox in network setup wizard 2023-10-05 11:01:29 +02:00
Sander van Grieken 05a34fbe24 qml: tap-on-background now removes focus, allowing convenient way to hide keyboard 2023-09-25 16:58:27 +02:00
Sander van Grieken 2caa8f13cf wizard: make wizard.keystore_from_data more robust;
- always store 'keystore_type' in cosigner data and use same types as main
- dont share 'hardware_device' in root of dict, but store for each cosigner
- properly return hardware keystore for hardware cosigners
2023-09-20 14:34:31 +02:00
Sander van Grieken a6aff1ec07 qml: check passphrase not empty when checked 2023-09-20 14:34:30 +02:00
Sander van Grieken 58dbe6690d qml: create ElCombBox and ElRadioButton that automatically word wrap their text element. Fixes #8611 2023-09-12 17:56:35 +02:00
Sander van Grieken f4f88f4294 qml: fix wizard text for keystore, wrap text 2023-07-31 11:43:15 +02:00
Sander van Grieken 8cd95f1f7f qml: limit BIP39 cosigners script type to initial choice (bip39) or initial seed (electrum) 2023-06-02 09:46:53 +02:00
SomberNight e9475345e4 qml wizard: "confirm seed" screen to normalize whitespaces
fixes https://github.com/spesmilo/electrum/issues/8442
2023-05-17 15:19:41 +00:00
Sander van Grieken 4f252a438c qml: validate duplicate master key in WCBIP39Refine for BIP39 cosigner seeds (fixes #8432) 2023-05-15 14:45:21 +02:00
SomberNight d2cf21fc2b qml wizard: enforce homogeneous master keys in multisig
- {xpub, Ypub, Zpub} categories cannot be mixed
- old mpk must not be used in multisig
2023-05-11 10:13:51 +00:00
Sander van Grieken f40d603e64 qml: styling bip39 refine and recovery 2023-05-10 17:16:35 +02:00
Sander van Grieken 0e0c7980dd qml: implement bip39 account detection 2023-05-09 11:40:05 +02:00
Sander van Grieken 1a889d19b5 Merge branch 'seed_keyboard' 2023-05-03 11:47:52 +02:00
Sander van Grieken 0672ea20ab qml: implement toggle for android SECURE_FLAG and add marker to wizard pages
that should be secured.
2023-05-02 15:16:51 +02:00
Sander van Grieken 8cd26820bf qml: styling seedtextarea 2023-05-02 13:56:55 +02:00
Sander van Grieken 5600375d51 qml: no auto caps on import and master key controls 2023-04-29 14:30:25 +02:00
SomberNight 87909485c5 qml: wizard to check if wallet name is already used
was erroring at the very last moment previously
2023-04-27 08:47:02 +00:00
Sander van Grieken 2b091b283a qml: qebitcoin remove unused code, fix scoping, camelcase 2023-04-25 13:04:09 +02:00
Sander van Grieken 6848b8f375 qml: refactor all custom QRScan component wrappers to ScanDialog
(except SendDialog, which has a Paste button and slightly different behavior)
2023-04-24 13:34:05 +02:00
Sander van Grieken 03d9000e79 qml: fix a few texts that should wrap 2023-04-21 14:50:08 +02:00
Sander van Grieken 1649f9993e qml: limit wallet name label widths so they get wrapped/elided. fixes #8317 2023-04-20 10:27:30 +02:00
Sander van Grieken a0939aad75 qml: add doAccept and doReject functions to ElDialog.
These functions make sure no duplicate accepted/rejected signals are emitted.
2023-04-11 12:01:10 +02:00
SomberNight 5fd6d2af4b qml: flip and fix auto_connect in ServerConnectWizard 2023-03-28 14:44:21 +00:00
Sander van Grieken edffbee92d qml: same for last 2023-03-27 12:03:46 +02:00
Sander van Grieken cc9b022089 qml: don't update wizard valid state from wizard pages that are not the current page 2023-03-27 12:01:55 +02:00
Sander van Grieken d0f3e048b9 qml: followup 78d79290ad 2023-03-25 13:14:50 +01:00
Sander van Grieken f89e0b80e6 qml: wizard add label for second password entry 2023-03-23 10:46:28 +01:00
Sander van Grieken 677e1259df qml: ElDialog now defaults to parent on Overlay.overlay
This was replicated in basically all ElDialog derived dialogs
2023-03-20 16:53:40 +01:00
SomberNight a90bff4586 qml: mark masterkey/wif/addr input fields as sensitive
related: https://github.com/spesmilo/electrum/issues/8256
2023-03-17 17:09:01 +00:00
ThomasV 3574c99275 qml: in the password dialogs, disable the password confirmation
line if the first entered password is too short.

Without that, a user may enter two passwords that are identical
but too short, and then click on the eye icon in order to discover
that they actuall are identical.. and only at this point guess that
the size might be the problem.

Also, raise the minimum length to 6, because that is what is was
on Kivy.

One of the password dialogs still had two eye icons; that was only
fixed in the wizard. I guess that could be avoided if both dialogs
used the same code.
2023-03-16 20:51:17 +01:00
ThomasV 2ef60b906f Reword proxy question.
The second alternative in previous phrase can be misinterpreted as:
'Do you want to connect to the internet through an ISP?'
2023-03-16 17:12:21 +01:00