1
0
Commit Graph

15986 Commits

Author SHA1 Message Date
ThomasV
fe968cfb4b qml: (minor) change name of Amount field 2023-03-23 15:55:25 +01:00
SomberNight
b2372f2d53 android build: rm x86_64 target from "all" alias, since it is broken
(and release.sh uses the "all" target)

see https://github.com/spesmilo/electrum/issues/8278
2023-03-23 14:38:19 +00:00
SomberNight
0ebcc7df63 qml: only do android-specific stuff when on android
don't log an error when running on desktop
2023-03-23 14:34:47 +00:00
SomberNight
2231057d1e android build: allow specifying "x86_64" as target in build.sh 2023-03-23 14:12:39 +00:00
Sander van Grieken
f9a5c22633 qml: lnurl override disabled amount edit color, show lnurlError to user 2023-03-23 14:03:00 +01:00
ThomasV
f0a49de85b Merge pull request #8275 from spesmilo/qt_vkbd
use Qt virtual keyboard for Android QML
2023-03-23 13:33:36 +01:00
ThomasV
8e7cbd6ca2 qml: let user enter lnurl6 amount 2023-03-23 13:29:31 +01:00
ThomasV
39097783c3 qml: ask password to show seed 2023-03-23 11:04:58 +01:00
Sander van Grieken
abae815777 qml: TxDetails small form-factor fix, wrap buttons to below fee-bump text if width is constrained 2023-03-23 10:56:42 +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
75e5e4afd8 android: set default localization to en_GB to force number formatting and parsing to en_GB 2023-03-23 10:30:40 +01:00
Sander van Grieken
4bdd521a4b qml: abstract ElDialog resize behavior to property 2023-03-23 10:30:40 +01:00
Sander van Grieken
17bb1ad5c5 qml: enable Qt virtual keyboard and add Electrum keyboard style, modified from Qt 'default' style 2023-03-23 10:30:40 +01:00
Sander van Grieken
e7cc2c5a63 Revert "qml: pressing "Esc" on desktop to ~simulate "back" button"
This reverts commit 7f7ee8d82f.

This commit caused a regression with the android back button not closing a dialog.

reproduce:
1. from the main window, press receive.
2. in the request details window, press Create request.
3. in the receive payment dialog, press Copy
4. observe dialog cannot be closed by back button
2023-03-23 10:12:10 +01:00
ThomasV
9eb25cd442 follow-up a080e5130f 2023-03-23 08:22:36 +01:00
SomberNight
7834f6c427 commands: fix satoshis decimal conversion in payto cmd and others
When called via jsonrpc (but not via cli) with non-string amounts,
there could be a rounding error resulting in sending 1 sat less.

example:
```
$ ./run_electrum --testnet -w ~/.electrum/testnet/wallets/test_segwit_2 paytomany '[["tb1q6k5h4cz6ra8nzhg90xm9wldvadgh0fpttfthcg", 0.00033389]]' --fee 0
02000000000101b9e6018acb16952e3c9618b069df404dc85544eda8120e5f6e7cd7e94ce5ae8d0100000000fdffffff02fd8100000000000016001410c5b97085ec1637a9f702852f5a81f650fae1566d82000000000000160014d5a97ae05a1f4f315d0579b6577daceb5177a42b024730440220251d2ce83f6e69273de8e9be8602fbcf72b9157e1c0116161fa52f7e04db6e4302202d84045cc6b7056a215d1db3f59884e28dadd5257e1a3960068f90df90b452d1012102b0eff3bf364a2ab5effe952cba33521ebede81dac88c71951a5ed598cb48347b3a022500

$ curl --data-binary '{"id":"curltext","method":"paytomany","params":{"outputs":[["tb1q6k5h4cz6ra8nzhg90xm9wldvadgh0fpttfthcg", 0.00033389]], "fee": 0, "wallet": "/home/user/.electrum/testnet/wallets/test_segwit_2"}}' http://user:pass@127.0.0.1:7777
{"id": "curltext", "jsonrpc": "2.0", "result": "02000000000101b9e6018acb16952e3c9618b069df404dc85544eda8120e5f6e7cd7e94ce5ae8d0100000000fdffffff02fe8100000000000016001410c5b97085ec1637a9f702852f5a81f650fae1566c82000000000000160014d5a97ae05a1f4f315d0579b6577daceb5177a42b0247304402206ef66b845ca298c14dc6e8049cba9ed19db1671132194518ce5d521de6f5df8802205ca4b1aee703e3b98331fb9b88210917b385560020c8b2a8a88da38996b101c4012102b0eff3bf364a2ab5effe952cba33521ebede81dac88c71951a5ed598cb48347b39022500"}
```
^ note that first tx has output for 0.00033389, second tx has output for 0.00033388

fixes https://github.com/spesmilo/electrum/issues/8274
2023-03-22 12:22:36 +00:00
ThomasV
0d007b5739 follow-up aa3697d 2023-03-22 10:21:09 +01:00
ThomasV
36687e436d Merge pull request #8273 from SomberNight/202303_qml_esc_shortcut
qml: pressing "Esc" on desktop to ~simulate "back" button
2023-03-22 08:15:01 +01:00
ghost43
27bc0bb552 Merge pull request #8267 from SomberNight/202303_build_userid1000
build: docker scripts to work even if host user id != 1000
2023-03-21 17:54:29 +00:00
SomberNight
558eb1a372 qml: reorganise toolbarTopLayout, so that top-left click opens menu
previously clicking too far left would not open the wallet-menu:
- click on label would open it, but
- click on wallet-icon or padding to its left would not
2023-03-21 17:51:29 +00:00
SomberNight
7f7ee8d82f qml: pressing "Esc" on desktop to ~simulate "back" button 2023-03-21 16:51:50 +00:00
SomberNight
98304662ca android build: default to log_level=2
It is nice to see debug logs for local builds,
and also extremely useful to have them on the CI.

follow-up 6b9d294a86
2023-03-21 16:34:39 +00:00
Sander van Grieken
bac889c593 android: fix ply depends assert 2023-03-21 17:12:49 +01:00
ThomasV
3fb3e3b809 lnurl6: pay invoice directly 2023-03-21 17:08:36 +01:00
SomberNight
ed0f1ea27f qt receive_tab: use correct qrcode icon (based on dark/light theme) 2023-03-21 15:31:07 +00:00
Sander van Grieken
6b9d294a86 android: log_level 2 when running in CI 2023-03-21 14:13:57 +01:00
Sander van Grieken
1176552132 android: upgrade to Qt 5.15.7, PyQt5 5.15.9 2023-03-21 12:41:20 +01:00
ThomasV
1503ef1e2a follow-up previous commit 2023-03-21 10:42:21 +01:00
ThomasV
a080e5130f Qt receive_tab: toggle_view_button instead of tabs 2023-03-21 10:34:26 +01:00
Sander van Grieken
3cf732cb51 qml: introduction text bottom margins in RbF bump fee and cancel dialogs 2023-03-21 09:44:53 +01:00
Sander van Grieken
077ea9a4a5 qml: AddressDetails heading 2023-03-21 09:44:40 +01:00
ThomasV
ce6e4d99e7 Qt history_list: disable summary if fx history is not available 2023-03-21 08:04:03 +01:00
SomberNight
c9b6a6c01e build: fix repro builds where host userid != 1000
- repro builds to use fixed uid=1000 inside the container
  - in case the file permissions leak into the binaries, they are still reproducible
  - chown 1000:1000 fresh_clone
- repro builds to create fresh_clone dir outside git clone
  - otherwise the local dev build would still interact with the fresh_clone dir
    - due to e.g. recursive "find -exec touch",
    - and even the "docker build" cmd itself would try to stat/read it
      - see https://github.com/docker/for-linux/issues/380
  - and "rm -rf fresh_clone" needs sudo if the host uid is not 1000
  - this way the local dev build does not need sudo

to recap:
- local dev builds use the host userid inside the container, directly operate on the project dir
  - does not need sudo
- repro builds create a fresh git clone, chown it to 1000, and use userid=1000 inside the container
  - if the host userid is 1000, does not need sudo
  - otherwise, needs sudo

closes https://github.com/spesmilo/electrum/issues/8261
2023-03-20 23:32:59 +00:00
SomberNight
9df5f55a1f password unification: bugfix, now passes test cases
fixes https://github.com/spesmilo/electrum/issues/8259

note that technically this is an API change for
- wallet.check_password
- wallet.update_password
- storage.check_password
2023-03-20 20:07:53 +00:00
SomberNight
11f06d860e tests: add more tests for daemon.update_password_for_directory 2023-03-20 20:05:31 +00:00
SomberNight
aac9afa7c1 tests: add a failing testcase for daemon.update_password_for_directory
related https://github.com/spesmilo/electrum/issues/8259
2023-03-20 20:05:21 +00:00
Sander van Grieken
a5c58f8aae qml: layout fixes for small form-factor devices 2023-03-20 19:52:57 +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
b8d4ccd432 wallet: fix get_locktime_for_new_transaction for lagging server
Merchant reported that 0.5% of txs they make are rejected
by the connected server due to the locktime being in the future.

fixes https://github.com/spesmilo/electrum/issues/8245
2023-03-20 15:50:38 +00:00
Sander van Grieken
4ed69cc54f qml: BtcField/FiatField ImhDigitsOnly input method hint 2023-03-20 14:10:13 +01:00
Sander van Grieken
c9df290301 android: update P4A to 8589243afb48fdb116d791dc5b3973382e83273f
include Qt Virtual Keyboard libraries and associated QtQuick components
2023-03-20 13:15:03 +01:00
ThomasV
4fa192d9e7 follow-up c3e52bfafc 2023-03-20 11:09:18 +01:00
ThomasV
2e797b4d77 Merge branch 'master' of github.com:spesmilo/electrum 2023-03-20 11:00:30 +01:00
ThomasV
5ee89a294e Merge pull request #8266 from SomberNight/202303_cb_uint16
lnutil.ImportedChannelBackupStorage: change ser format: int16->uint16
2023-03-20 07:49:52 +01:00
SomberNight
6e472efd5f build: follow-up prev: only use host userid for local dev builds
reproducibility probably needs a hardcoded userid

Also, move the UID arg later in the dockerfiles, for better caching.
(if local dev build and repro build set different UIDs, the build caches
will diverge at that step)
2023-03-20 02:06:54 +00:00
Sander van Grieken
ab073827cf build: use uid of user building the build containers 2023-03-20 02:06:50 +00:00
SomberNight
08ae0a73b2 build: add separate .dockerignore files
The .dockerignore symlink in the project root dir is only picked up by the android build.
The android build has the project root as its build context for "docker build" --
the other builds have their own subdirectories as build context, e.g. contrib/build-linux/appimage.
2023-03-20 02:05:40 +00:00
SomberNight
5a4c39cb94 lnutil.ImportedChannelBackupStorage: change ser format: int16->uint16
In the binary serialised format, replace all instances of int16 with uint16.
In particular, this allows port>32767.
Fixes https://github.com/spesmilo/electrum/issues/8264

I think this is backwards compatible, as in, any existing channel backup already out there,
should be properly parsed with the new code. (new code however can serialise cbs that old
code deserialises incorrectly)

```
>>> struct.pack('<h', 258)
b'\x02\x01'
>>> struct.pack('<H', 258)
b'\x02\x01'
```
2023-03-19 19:32:09 +00:00
SomberNight
4fb35c0002 lnutil: clean-up ImportedChannelBackupStorage.from_bytes 2023-03-19 19:22:41 +00:00
SomberNight
a30cda4ebd lnutil: test ImportedChannelBackupStorage.from_bytes
regression test - we should not inadvertently break deserialising existing backups
2023-03-19 19:15:44 +00:00