Commit Graph

779 Commits

Author SHA1 Message Date
Sander van Grieken
45944d280d qml: update channelbar when conditions change 2023-07-13 19:17:16 +02:00
Sander van Grieken
2cf4cc1978 qml: render reserved channel capacity in a darker tone, take frozen into account 2023-07-13 19:17:16 +02:00
Sander van Grieken
b6863b4854 qml: add LabelSync toggle 2023-07-11 12:51:37 +02:00
Sander van Grieken
023e8ff0eb qml: remember invoice/qr type on ReceiveDialog 2023-07-10 18:10:15 +02:00
Sander van Grieken
86d79f3ec9 qml: show backup type, as in qt 2023-07-10 14:45:36 +02:00
SomberNight
0b0d58b289 qml: fix "copy" and "share" buttons for channel backup dialogs
The QR code was shown but the copy/share buttons did not do anything.
2023-07-10 11:23:31 +00:00
Sander van Grieken
2d95c457dd qml: addressdetails item order, add technical properties header 2023-07-09 13:43:39 +02:00
Sander van Grieken
016b5eb743 qml: show private key in address details 2023-07-09 13:43:39 +02:00
Sander van Grieken
5f2fee5184 qml: strip whitespace of data pasted/scanned before processing 2023-07-09 11:56:21 +02:00
Sander van Grieken
c4e8869c1a qml: add PIN auth to close channel operation. 2023-07-04 14:05:10 +02:00
Sander van Grieken
5f8b8ce97e qml: show channel backup and explanatory message before local force close, and let user confirm before doing the close operation
also show message dialog after close succeeded instead of just closing the channel close dialog
2023-07-04 12:51:26 +02:00
Sander van Grieken
d83149f668 qml: add workaround for android predictive back gestures in History component
contributes to #8464
2023-06-28 16:14:05 +02:00
SomberNight
888291a8f8 qml: fix lnurl-pay when config.BTC_AMOUNTS_ADD_THOUSANDS_SEP is True
when paying an lnurl-pay that provides an amount interval,
the amount field is editable by the user and it expects no spaces
2023-06-23 16:23:12 +00: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
Sander van Grieken
6fbe765a3e qml: make ConfirmTxDialog flickable if content larger than window (fixes #8446) 2023-05-31 11:29:14 +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
1dd129c3e8 qml: remove logging ElCombobox 2023-05-15 16:51:49 +02:00
Sander van Grieken
5881eb3035 qml: LnurlPayRequestDialog validate amount between indicated boundaries 2023-05-15 16:47:19 +02:00
Sander van Grieken
229afdd887 qml: styling LnurlPayRequestDialog 2023-05-15 16:47:06 +02: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
Sander van Grieken
cb13eee8a3 qml: let ElCombobox determine implicitWidth based on the dimensions of all modelitems 2023-05-15 13:43:57 +02:00
Sander van Grieken
04c9078955 qml: show pay_invoice error to user 2023-05-15 11:56:40 +02:00
Sander van Grieken
3115ce2f53 qml: show historic fiat amounts when enabled and applicable 2023-05-15 11:38:43 +02:00
Sander van Grieken
89225a9f41 qml: show result dialog after password change 2023-05-12 10:53:02 +02:00
ThomasV
ca49d73312 Merge pull request #8417 from SomberNight/202305_db_version_52
wallet_db version 52: break non-homogeneous multisig wallets
2023-05-11 16:35:42 +02:00
SomberNight
68fb996d20 wallet_db version 52: break non-homogeneous multisig wallets
- case 1: in version 4.4.1, 4.4.2, the qml GUI wizard allowed creating multisig wallets with an old_mpk as cosigner.
- case 2: in version 4.4.0, 4.4.1, 4.4.2, the qml GUI wizard allowed creating multisig wallets with mixed xpub/Ypub/Zpub.

The corresponding missing input validation was a bug in the wizard, it was unintended behaviour. Validation was added in d2cf21fc2b. Note however that there might be users who created such wallet files.

Re case 1 wallet files: there is no version of Electrum that allows spending from such a wallet. Coins received at addresses are not burned, however it is technically challenging to spend them. (unless the multisig can spend without needing the old_mpk cosigner in the quorum).

Re case 2 wallet files: it is possible to create a corresponding spending wallet for such a multisig, however it is a bit tricky. The script type for the addresses in such a heterogeneous xpub wallet is based on the xpub_type of the first keystore. So e.g. given a wallet file [Yprv1, Zpub2] it will have sh(wsh()) scripts, and the cosigner should create a wallet file [Ypub1, Zprv2] (same order).

Technically case 2 wallet files could be "fixed" automatically by converting the xpub types as part of a wallet_db upgrade. However if the wallet files also contain seeds, those cannot be converted ("standard" vs "segwit" electrum seed).
Case 1 wallet files are not possible to "fix" automatically as the cosigner using the old_mpk is not bip32 based.

It is unclear if there are *any* users out there affected by this. I suspect for case 1 it is very likely there are none (not many people have pre-2.0 electrum seeds which were never supported as part of a multisig who would also now try to create a multisig using them); for case 2 however there might be.

This commit breaks both case 1 and case 2 wallets: these wallet files can no longer be opened in new Electrum, an error message is shown and the crash reporter opens. If any potential users opt to send crash reports, at least we will know they exist and can help them recover.
2023-05-11 14:26:11 +00:00
Sander van Grieken
f8ce6c6564 qml: small screen fixes 2023-05-11 13:24:54 +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
ab19ece4e0 qml: refactor TxOutput into reusable component 2023-05-09 15:50:29 +02:00
Sander van Grieken
daf1f37419 qml: add share toolbutton for outputs in TxDetails 2023-05-09 15:50:29 +02:00
Sander van Grieken
4df6052567 qml: add validators for BtcField and FiatField controls 2023-05-09 15:43:52 +02:00
Sander van Grieken
cb9ba819ec qml: remove Qt Vkbd leftovers 2023-05-09 15:43:52 +02:00
Sander van Grieken
0e0c7980dd qml: implement bip39 account detection 2023-05-09 11:40:05 +02:00
Sander van Grieken
d12752cc42 qml: add Technical properties header for TxDetails and LightningPaymentDetails 2023-05-08 14:53:45 +02:00
Sander van Grieken
9d11aae394 qml: take internal, external, billing address colors from desktop client and color output addresses
accordingly in ConfirmTxDialog, TxDetails, CpfpBumpFeeDialog, RbfBumpFeeDialog and RbfCancelDialog
2023-05-04 13:26:56 +02:00
Sander van Grieken
2eaf3dcc64 qml: cleanup 2023-05-03 22:50:58 +02:00
Sander van Grieken
0be8beb9c4 qml: add secure flag to WalletDetails, set when seed is shown 2023-05-03 22:41:25 +02:00
SomberNight
53d61c011a qml network: restrict cases where server is shown "lagging" 2023-05-03 13:49:44 +00:00
Sander van Grieken
1a889d19b5 Merge branch 'seed_keyboard' 2023-05-03 11:47:52 +02:00
Sander van Grieken
c8c76a8d6f qml: fix var ref 2023-05-02 20:16:36 +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
95f960bb67 qml: seedtext word suggestions below text area 2023-05-02 13:04:33 +02:00
Sander van Grieken
b290fbd4b5 qml: seedkeyboard padding, explicit keycode, backspace next to spacebar 2023-05-02 13:03:13 +02:00
Sander van Grieken
6394cdcd3b qml: disable Qt Virtual Keyboard and refactor keyboardFreeZone item to take
android system keyboard into account
2023-05-01 18:39:16 +02:00
Sander van Grieken
9ac83f6d9f qml: add SeedKeyboard for seed entry without using system virtual keyboard 2023-05-01 16:59:40 +02:00
Sander van Grieken
5600375d51 qml: no auto caps on import and master key controls 2023-04-29 14:30:25 +02:00
Sander van Grieken
56165c3790 qml: don't start loadWallet if daemon is busy loading. 2023-04-29 14:13:12 +02:00
Sander van Grieken
1b362f64f2 qml: properly delete wizard components after use. fixes #8357 2023-04-29 13:57:16 +02:00