1
0
Commit Graph

17039 Commits

Author SHA1 Message Date
ThomasV
816e617aaf option_zeroconf
- accept zeroconf channels only from a single node
 - fw_info uses get_scid_or_local_alias
2023-11-13 10:47:18 +01:00
ThomasV
96e143b6c3 lnpeer: abort send_revoke_and_ack and maybe_send_commitment if channel is closed. fixes #8684 2023-11-13 10:43:16 +01:00
ThomasV
98f9f295cf fix #8683; do not force close channel if we just sent update_fulfill_htlc 2023-11-12 17:10:50 +01:00
ThomasV
4a3a61c6b0 Merge pull request #8678 from accumulator/qml_password_strength
qml: introduce PasswordStrengthIndicator control, and add to Password…
2023-11-11 09:52:52 +01:00
Sander van Grieken
d1d4e19554 qml: txdetails: add lockDelay property when height is TX_HEIGHT_FUTURE and add mempool depth for height TX_HEIGHT_UNCONF_PARENT 2023-11-10 17:03:56 +01:00
ThomasV
de0dc93a9d Merge pull request #8675 from accumulator/address_delete
qml: implement delete address for imported wallets
2023-11-10 15:23:29 +01:00
ThomasV
4252c30210 Merge pull request #8682 from accumulator/about_version
qml: remove APK version, add Qt and PyQt version strings to About page
2023-11-10 15:04:53 +01:00
Sander van Grieken
3967323842 qml: refactor ChannelDetails. Add funding outpoint 2023-11-10 13:02:55 +01:00
Sander van Grieken
2995bc8b37 qml: fix dialog not closing if dialog is shown/hidden more than once
most dialogs are destroyed when closed, therefore not hitting this bug,
but e.g. ChannelOpenProgressDialog is reused.
2023-11-10 11:59:22 +01:00
Sander van Grieken
42f323ac8d qml: remove APK version, add Qt and PyQt version strings to About page 2023-11-10 11:11:51 +01:00
Sander van Grieken
0fb47c87d2 qml: fixes for CloseChannelDialog;
- split RequestForceClose and LocalForceClose options, as request force close is only available if connected.
- disable no close policy on dialog, as it locks the user in the dialog if no succesful close is initiated.
  what this intended to do is keep the backing object QEChannelDetails alive until a result is obtained, to avoid
  exceptions when emitting the result signal. this is now handled more robustly, the user can leave the dialog
  without triggering exceptions later.
2023-11-10 10:58:08 +01:00
ThomasV
fb4eb86e7c submarine swaps: remove support for 'old' normal swaps,
where the user has the preimage.

The CLTV requirements between old and new flow are imcompatible.
With the current locktime value, the server was vulnerable to an
attack where the client does not settle the lightning payment
and claims a refund. In order to support both old and new flows,
one would need to use different locktimes.
2023-11-10 10:35:34 +01:00
ThomasV
300c3bbd30 submarine_swaps: rename variable for clarity 2023-11-10 10:05:04 +01:00
Sander van Grieken
e011bd235b qml: implement delete address for imported wallets, and fix address list on address/key add. 2023-11-10 09:30:56 +01:00
Sander van Grieken
98264f64ad qml: introduce PasswordStrengthIndicator control, and add to PasswordDialog and WCWalletPassword 2023-11-10 09:30:31 +01:00
SomberNight
d49e1bb32c contrib/android/Readme.md: update "how to run qml gui on linux" section 2023-11-09 16:40:45 +00:00
SomberNight
5ba156fcad Merge remote-tracking branch 'remotes/accumulator/qt6'
For the "qml" gui (used on Android), this upgrades the qt version from 5.15 to 6.4.

PR https://github.com/spesmilo/electrum/pull/8545
2023-11-09 16:18:56 +00:00
Sander van Grieken
047cc6f957 qml: remove attempt to unfocus by clicking dialog background
Doesn't really work as it triggers on events above the background it is defined on :(
2023-11-08 15:38:26 +01:00
Sander van Grieken
8798a45d70 qml: fix issue with width of fiat textedit on ReceiveDetailsDialog 2023-11-07 17:05:13 +01:00
Sander van Grieken
f708e7f03e wizard/wallet: clean up imports, code style warnings. 2023-11-07 11:05:30 +01:00
Sander van Grieken
a6432732f0 qml: addresses/coins filter match case insensitive, don't match 'None' for undefined fields 2023-11-07 10:47:34 +01:00
SomberNight
1544a71542 qml qr scanner: make xml layout look nicer 2023-11-07 10:32:14 +01:00
Sander van Grieken
58ff76adcf android: correctly describe buildozer branch used 2023-11-07 10:32:09 +01:00
Sander van Grieken
55c01bda9b android: set target_sdk_version to 33 2023-11-07 10:32:06 +01:00
Sander van Grieken
11d39cd942 qml: fix keyboard exclusion zone
turns out that Qt.inputMethod.keyboardRectangle.height is not suitable for calculating the exact keyboard
dimensions in Qt coordinates. Instead, use Qt.inputMethod.keyboardRectangle.y transformed to Qt coordinates
using Screen.devicePixelRatio

Note: Qt.inputMethod.keyboardRectangle stop being updated after exiting FLAG_SECURE state
(e.g. in seed or master key entry pages)
2023-11-07 10:32:00 +01:00
Sander van Grieken
32c1915de4 qml: restore Send/ScanDialog for desktop/dev, keeping qr scan Activity for android only.
Also use stable R package, regardless of APP_PACKAGE_DOMAIN used in build.
2023-11-07 10:17:10 +01:00
SomberNight
5c3e14d8de qml: replace Send/ScanDialog with java bases zxing qr scan activity. 2023-11-07 10:17:10 +01:00
SomberNight
c33ee87544 android: restore SimpleScannerActivity.java that was used in kivy
for QR code scanning with camera

1c10b1ce00/electrum/gui/kivy/data/java-classes/org/electrum/qr/SimpleScannerActivity.java
2023-11-07 10:17:10 +01:00
Sander van Grieken
b9ab0f63ef qt6: update buildozer ref to ce4f2257249fdf4ff1f4cb8983fd7ac44174a274 2023-11-07 10:17:10 +01:00
Sander van Grieken
be801f30e8 gui: make common_qt compatible with both Qt5 and Qt6 2023-11-07 10:17:10 +01:00
Sander van Grieken
db532dbd19 qml: android back-gesture conflict hack not working on qt6, replace with simple properties 2023-11-07 10:17:10 +01:00
Sander van Grieken
e561ce211b cirrus: task timeout 90m 2023-11-07 10:17:10 +01:00
Sander van Grieken
a77ff9943a qml: refactor qr scan to qt6
As the method of capturing frames is totally different, the animation when
a QR is found has been removed.
2023-11-07 10:17:10 +01:00
Sander van Grieken
65d41ccc49 qml: qualify all signal handler parameters 2023-11-07 10:17:10 +01:00
Sander van Grieken
ae446377f8 qml: work around toolbar layout not right-aligning indicators when indicators toggle visibility 2023-11-07 10:17:10 +01:00
Sander van Grieken
8b567ae447 qml: remove all QML imports version numbers 2023-11-07 10:17:08 +01:00
Sander van Grieken
6270eae5c9 qml: port PyQt5 to PyQt6 2023-11-07 10:16:18 +01:00
Sander van Grieken
0441cb0ad5 qml: exclude payserver plugin for qml 2023-11-07 10:09:51 +01:00
Sander van Grieken
bf6163b4f8 android: update p4a ref to 3b3733dbf5f461e197ba83887ac0d3b6d0f1c396
buildozer ref to 698b48136c55b2495128207c5e98dccc128bb6c2
2023-11-07 10:09:51 +01:00
Sander van Grieken
770a32cf6a qt6: update recipe pins, NDK, SDK, Ant, use venv for buildozer/p4a, add tomli recipe 2023-11-07 10:09:51 +01:00
Sander van Grieken
16d3db95ab qt6: update android build container to bookworm 2023-11-07 10:09:51 +01:00
ThomasV
f98602918b Revert "Update .cirrus.yml"
This reverts commit 33ac0b4591.
2023-11-02 19:03:15 +01:00
SomberNight
7c2131209f config: handle better if data dir disappears while we are running
related https://github.com/spesmilo/electrum/issues/4151#issuecomment-1791117301

closes https://github.com/spesmilo/electrum/issues/4151
2023-11-02 16:59:53 +00:00
Sander van Grieken
d6a6f56ddf qml: add ice crystal icon and use for (un)freeze buttons. 2023-11-02 13:06:48 +01:00
Sander van Grieken
4671c002c9 qt: fix detected account select (#8673) 2023-11-02 12:49:31 +01:00
ThomasV
e8f5aa50ca Merge pull request #8653 from accumulator/addresses_coins_filter
qml: also show coins in Addresses page, and add a few filter options.…
2023-11-02 12:36:24 +01:00
Sander van Grieken
6ce8a583fd qt: add missing case for on-chain fallback for BIP21 payment identfier containing lightning invoice 2023-11-02 10:24:37 +01:00
SomberNight
ccbac96f9a (trivial) contacts: add some type hints 2023-11-01 17:35:45 +00:00
SomberNight
511674a532 contacts: fix adding new contacts
This is a regression from 7ca89f56ee, which introduced StoredList.
The newly added test was failing without the change.

```
Traceback (most recent call last):
  File "/home/user/wspace/electrum/electrum/gui/qt/main_window.py", line 1786, in new_contact_dialog
    self.set_contact(line2.text(), line1.text())
  File "/home/user/wspace/electrum/electrum/gui/qt/main_window.py", line 1435, in set_contact
    self.contacts[address] = ('address', label)
  File "/home/user/wspace/electrum/electrum/contacts.py", line 75, in __setitem__
    self.save()
  File "/home/user/wspace/electrum/electrum/contacts.py", line 62, in save
    self.db.put('contacts', dict(self))
  File "/home/user/wspace/electrum/electrum/json_db.py", line 42, in wrapper
    return func(self, *args, **kwargs)
  File "/home/user/wspace/electrum/electrum/json_db.py", line 318, in put
    self.data[key] = copy.deepcopy(value)
  File "/usr/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.10/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/usr/lib/python3.10/copy.py", line 271, in _reconstruct
    state = deepcopy(state, memo)
  File "/usr/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.10/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/usr/lib/python3.10/copy.py", line 271, in _reconstruct
    state = deepcopy(state, memo)
  File "/usr/lib/python3.10/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.10/copy.py", line 231, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.10/copy.py", line 161, in deepcopy
    rv = reductor(4)
TypeError: cannot pickle '_thread.RLock' object
```
2023-11-01 17:28:29 +00:00
Sander van Grieken
c694415b4b qml: add addresslist filter persistence 2023-11-01 18:23:16 +01:00