Commit Graph

1258 Commits

Author SHA1 Message Date
SomberNight 9b1ccb9978 android: add comment that OS push notifications are broken 2024-09-19 16:46:07 +00:00
ThomasV ad0b5453a3 qml: do not display success if swap failed.. 2024-09-19 13:16:32 +02:00
ghost43 1e03b4668a Merge pull request #9205 from accumulator/issue9204
qml: add seed passphrase property to QEWallet, show in WalletDetails
2024-09-18 16:16:09 +00:00
Sander van Grieken 0d7ff8635b qml: add seed passphrase property to QEWallet, show in WalletDetails 2024-09-18 18:00:44 +02:00
SomberNight 1ee6361c7e qt gui: qt6 migration follow-ups 2024-09-18 15:48:50 +00:00
Sander van Grieken eaebcaf383 qml: styling HelpDialog 2024-09-17 13:22:37 +02:00
SomberNight 7a7b43c0a8 qml/android: set max screen brightness when displaying QR codes
In some cases this makes it much easier to successfully scan a QR code.
I was trying to scan a PSBT using a laptop camera from my phone screen for 2 minutes, until I realised the screen brightness was the issue.  o.O
2024-08-21 23:37:36 +00:00
SomberNight 2eb51bcbe6 trustedcoin: sanitize error messages coming from 2fa server
related https://github.com/spesmilo/electrum/issues/9096
2024-06-17 16:52:26 +00:00
ThomasV 2f3d89f415 prepare for separation of ecc module:
- move encrypt/sign functions elsewhere
- remove local dependencies in ecc.py, ecc_fast.py (except logging)
2024-06-17 13:05:57 +02:00
Sander van Grieken 8d9bcda36f qml: fix handling of channel backup import on lightning-disabled wallets 2024-06-10 15:07:02 +02:00
accumulator 15f13ebc66 Merge pull request #9076 from SomberNight/202405_android_config_pin
qml: "wallet_else_pin" auth should only use the wallet pw if is unified
2024-05-31 11:14:50 +02:00
SomberNight db5f1a11a5 fix typo
note: "everytime" even appears in the old_mnemonic wordlist, but it is a misspelling.
2024-05-30 16:59:28 +00:00
SomberNight 11614f035d qml: "wallet_else_pin" auth should only use the wallet pw if is unified
related https://github.com/spesmilo/electrum/pull/9074
2024-05-30 16:17:21 +00:00
ghost43 183bdd1464 Merge pull request #9073 from accumulator/android_qr_scanner_fix
qml: don't unbind/unregister the ActivityResultListener from within the ActivityResultListener handler func
2024-05-30 15:51:26 +00:00
Sander van Grieken 8085c41cfb qml: don't rely on wallet when deactivating PIN and no wallet loaded (fixes #8366) 2024-05-30 15:23:25 +02:00
Sander van Grieken 450b9a03ce qml: don't unbind/unregister the ActivityResultListener from within the ActivityResultListener handler func.
instead, schedule a queued finished signal to unregister the listener after the handler has finished.
See PythonActivity.java in P4A for why this probably causes the most often occurring crash we see on the Play Store:

```
Exception java.lang.RuntimeException:
  at android.app.ActivityThread.deliverResults (ActivityThread.java:5164)
  at android.app.ActivityThread.handleSendResult (ActivityThread.java:5205)
  at android.app.servertransaction.ActivityResultItem.execute (ActivityResultItem.java:51)
  at android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:135)
  at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:95)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2136)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loop (Looper.java:236)
  at android.app.ActivityThread.main (ActivityThread.java:8061)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:656)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:967)
Caused by java.util.ConcurrentModificationException:
  at java.util.ArrayList$Itr.next (ArrayList.java:860)
  at org.kivy.android.PythonActivity.onActivityResult (PythonActivity.java:218)
  at android.app.Activity.dispatchActivityResult (Activity.java:8501)
  at android.app.ActivityThread.deliverResults (ActivityThread.java:5157)
```
2024-05-30 14:53:33 +02:00
SomberNight e8a9e45291 qml wizard: even stricter validation for new wallet name
related: https://github.com/spesmilo/electrum/commit/07dc80dd9a21df820a3de3ea0cb1768c74aeab9d
2024-05-28 14:20:28 +00:00
SomberNight 48513df4ae qml: NetworkOverview: show server height when syncing headers
for better feedback during initial header sync
2024-05-22 14:43:28 +00:00
Sander van Grieken 9d29e6e03c qml: log error if not able to retrieve private key for address 2024-05-16 12:12:26 +02:00
Sander van Grieken 082cf6677e qml: expose LIGHTNING_PAYMENT_BUDGET_FEE_MAX_MILLIONTHS in preferences 2024-05-09 12:31:51 +02:00
SomberNight c84664617d qml: qeinvoice: fix regression in update_userinfo
follow-up 3b0cdef871

```
 29.60 | E | lnworker.LNWallet.[test_segwit_2] | Exception in pay_invoice: TypeError("unhashable type: 'list'")
Traceback (most recent call last):
  File "/home/user/wspace/electrum/electrum/util.py", line 1153, in wrapper
    return await func(*args, **kwargs)
  File "/home/user/wspace/electrum/electrum/lnworker.py", line 1518, in pay_invoice
    self.set_invoice_status(key, PR_INFLIGHT)
  File "/home/user/wspace/electrum/electrum/lnworker.py", line 2404, in set_invoice_status
    util.trigger_callback('invoice_status', self.wallet, key, status)
  File "/home/user/wspace/electrum/electrum/util.py", line 1796, in trigger_callback
    callback(*args)
  File "/home/user/wspace/electrum/electrum/gui/qml/qeinvoice.py", line 90, in on_event_invoice_status
    self.update_userinfo()
  File "/home/user/wspace/electrum/electrum/gui/qml/qeinvoice.py", line 327, in update_userinfo
    self.userinfo = userinfo_for_invoice_status([self.status])
  File "/home/user/wspace/electrum/electrum/gui/qml/qeinvoice.py", line 305, in userinfo_for_invoice_status
    return {
TypeError: unhashable type: 'list'
```
2024-05-06 18:11:31 +00:00
Sander van Grieken 3b0cdef871 qml: lightning invoice status can be one of onchain invoice states when using fallback address. (fixes #9018) 2024-04-24 13:37:33 +02:00
SomberNight 96bb1611c5 follow-up plugins changes: fix qml gui
follow-up https://github.com/spesmilo/electrum/pull/8713

```
  1.35 | E | __main__ | daemon.run_gui errored
Traceback (most recent call last):
  File "/home/user/wspace/electrum/./run_electrum", line 458, in handle_cmd
    d.run_gui()
  File "/home/user/wspace/electrum/electrum/daemon.py", line 623, in run_gui
    self.gui_object = gui.ElectrumGui(config=self.config, daemon=self, plugins=self._plugins)
  File "/home/user/wspace/electrum/electrum/util.py", line 482, in do_profile
    o = func(*args, **kw_args)
  File "/home/user/wspace/electrum/electrum/gui/qml/__init__.py", line 82, in __init__
    self.app = ElectrumQmlApplication(sys.argv, config=config, daemon=daemon, plugins=plugins)
  File "/home/user/wspace/electrum/electrum/gui/qml/qeapp.py", line 428, in __init__
    self.plugins.load_plugin('trustedcoin')
  File "/home/user/wspace/electrum/electrum/plugin.py", line 269, in load_plugin
    raise Exception(f"could not find plugin {name!r}")
Exception: could not find plugin 'trustedcoin'
```
2024-04-18 17:01:08 +00:00
SomberNight bd9d0ccc33 ecc: refactor/clean-up sign/verify APIs 2024-04-11 15:25:45 +00:00
ThomasV 61dc8b7c85 Merge pull request #8894 from SomberNight/202402_qetxdetails_rbf_localtx
qml: QETxDetails: defer to wallet.get_tx_info() for rbf/cpfp
2024-03-15 11:18:03 +01:00
ThomasV dcdbb0fb9c Merge pull request #8909 from accumulator/qml_finalizer_options
qml: add tx options to ConfirmTxDialog, RbfBumpFeeDialog
2024-03-15 10:46:33 +01:00
SomberNight 01155ac6f5 swaps: homogenise gui messages
see https://github.com/spesmilo/electrum/issues/8940
2024-03-13 13:52:40 +00:00
Sander van Grieken d0c37c6e33 qml: refactor help text in CpfpBumpFeeDialog, move most to help text popup 2024-02-23 11:11:12 +01:00
Sander van Grieken a9282c0e36 qml: add tx options to ConfirmTxDialog, RbfBumpFeeDialog 2024-02-23 10:31:40 +01:00
Sander van Grieken b0227c7e03 qml: add HelpDialog and HelpButton for showing additional info 2024-02-23 10:28:11 +01: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
Sander van Grieken dc3ff908b8 followup prev 2024-02-21 12:03:37 +01:00
Sander van Grieken d12ce00417 followup prev 2024-02-21 11:28:42 +01:00
Sander van Grieken 6d2dfc9759 android: limit size of text pasted from clipboard, to avoid TransactionTooLargeException
https://developer.android.com/reference/android/os/TransactionTooLargeException.html
2024-02-21 11:22:00 +01:00
Sander van Grieken de9c0249c7 qml: icons, styling 2024-02-19 14:38:29 +01:00
Sander van Grieken 2b95223e2b qml: handle invoice removed from backend from qeinvoicelistmodel status update timer (fixes #8898) 2024-02-19 10:48:24 +01:00
accumulator 1b75e3883e Merge pull request #8845 from accumulator/feepicker
qml: consolidate fee slider ui in various places to a single FeePicker control
2024-02-16 13:01:34 +01:00
Sander van Grieken 016e500993 qml: FeePicker parameterize enable display of tx info and picker, use this for CPFP
to put picker in Total section
2024-02-16 12:56:18 +01:00
Sander van Grieken c0b892720e qml: consolidate fee slider ui in various places to a single FeePicker control 2024-02-16 10:09:56 +01:00
SomberNight 87dd74d45c qml: QETxDetails: defer to wallet.get_tx_info() for rbf/cpfp
It might make sense to allow bump_fee on a local tx, and so wallet.get_tx_info() allows it.
For dscancel/cpfp, it does not allow it either. Still, I think this logic should be encapsulated in the wallet.
2024-02-15 16:40:55 +00:00
Sander van Grieken 3582c79160 stub QVideoSink import as it requires many dependencies but isn't used on android currently 2024-02-12 11:49:43 +01:00
Sander van Grieken 19d9467b93 qml: add typing declarations to qechanneldetails 2024-02-07 10:53:10 +01:00
accumulator acc7b44a3e Merge pull request #8873 from accumulator/issue_8355
qml: tighten self._loading guard to encompass whole loadWallet fn
2024-02-06 13:55:26 +01:00
Sander van Grieken 482ec89b5d minor, code style, imports 2024-02-05 21:25:13 +01:00
Sander van Grieken 4228911609 qml: close TxDetails on TX remove only after the 'removed_transaction' event has been received, so the
history model doesn't refresh too early (fixes #8782)
2024-02-05 21:07:33 +01:00
Sander van Grieken c755a58661 qedaemon: remove redundant, small code style fixes 2024-02-05 18:07:12 +01:00
Sander van Grieken 5aa782a19e qml: extend self._loading guard to encompass _on_backend_wallet_loaded slot as well 2024-02-05 17:59:44 +01:00
Sander van Grieken b361d02467 qml: tighten self._loading guard to encompass whole loadWallet fn, not just task thread.
Also make sure QEWallet is never instantiated within the task thread.
2024-02-05 17:41:56 +01:00