SomberNight
8945dcda7a
qt init: on exc, let crash reporter appear instead of silently dying
...
related: https://github.com/spesmilo/electrum/issues/7390
```
20210706T091826.513398Z | ERROR | __main__ | daemon.run_gui errored
Traceback (most recent call last):
File "run_electrum", line 407, in handle_cmd
File "electrum\daemon.py", line 584, in run_gui
File "electrum\gui\qt\__init__.py", line 414, in main
File "electrum\gui\qt\__init__.py", line 291, in wrapper
File "electrum\gui\qt\__init__.py", line 316, in start_new_window
File "electrum\gui\qt\__init__.py", line 361, in _start_wizard_to_select_or_create_wallet
File "electrum\wallet_db.py", line 73, in __init__
File "electrum\wallet_db.py", line 106, in load_data
File "electrum\util.py", line 412, in <lambda>
File "electrum\util.py", line 408, in do_profile
File "electrum\wallet_db.py", line 175, in upgrade
File "electrum\wallet_db.py", line 540, in _convert_version_24
ValueError: too many values to unpack (expected 2)
```
2021-07-07 19:19:43 +02:00
SomberNight
013cf869f1
qt: qrreader: keep both old and new toolchain; try to abstract it away
2021-06-25 16:52:02 +02:00
SomberNight
c1dbcab9bb
qt: new qrreader using QtMultimedia; drop CalinsQRReader(mac)
...
This commit ports the work of EchterAgo and cculianu from Electron-Cash,
to implement a new toolchain to scan qr codes.
Previously, on Linux and Win, we have been using zbar to access the camera
and read qrcodes; and on macOS we used CalinsQRReader (an objective-C
project by cculianu).
The new toolchain added here can use QtMultimedia to access the camera,
and then feed that image into zbar. When used this way, zbar needs
fewer dependencies and is easier to compile, in particular it can be
compiled for macOS.
The new toolchain works on all three platforms, with some caveats
(see code comments in related commits) -- so we also keep the end-to-end
zbar toolchain; but at least we can drop CalinsQRReader.
The related changes in Electron-Cash are spread over 50+ commits (several PRs and direct
pushes to master), but see in particular:
https://github.com/Electron-Cash/Electron-Cash/pull/1376
some other interesting links:
https://github.com/Electron-Cash/Electron-Cash/commit/b2b737001c8cc41a38fa580ea252a6d24e08f5d5
https://github.com/Electron-Cash/Electron-Cash/commit/163224cf1fad3af63f2d3cbe68a34fb8ff279af6
https://github.com/Electron-Cash/Electron-Cash/commit/3b31e0fcb13f67646228ff42c0dd39d2a0912291
https://github.com/Electron-Cash/Electron-Cash/commit/eda015908e9d6ea9a0adfbda9db55b929c0926ba
https://github.com/Electron-Cash/Electron-Cash/pull/1545
https://github.com/Electron-Cash/Electron-Cash/commit/052aa06c23b939adcea07c701f70ae28ebcf9e0a
2021-06-25 16:51:58 +02:00
SomberNight
c41cd4ae04
qt init: move Ctrl-C handling earlier
2021-04-06 18:27:28 +02:00
SomberNight
1cd5235426
qt init: rm gui.close() method
...
There is gui.stop() already, which does the same thing (which is shared API with kivy).
Also, the _cleanup_before_exit() call was redundant in close(),
aboutToQuit handles that.
2021-04-04 01:05:23 +02:00
SomberNight
a3b16c7640
qt init: shutdown properly if last open window was a wizard
...
fixes #7171
2021-04-04 00:49:25 +02:00
SomberNight
981381346f
qt: even more clean-up before exiting
...
related: https://github.com/spesmilo/electrum/issues/6889#issuecomment-812776695
2021-04-03 19:17:32 +02:00
SomberNight
be43632cc4
qt init: more clean-up for system tray
...
related: https://github.com/spesmilo/electrum/issues/6889#issuecomment-812776695
2021-04-03 06:17:47 +02:00
SomberNight
14c5ceeacf
qt init: (trivial) refactor system tray
2021-04-03 05:42:32 +02:00
SomberNight
e686b40819
qt init: don't catch BaseException unless there is good reason
...
let KeyboardInterrupt propagate out
2021-04-03 01:47:44 +02:00
SomberNight
34e64ef152
qt gui: some more clean-up when exiting
...
related: https://github.com/spesmilo/electrum/issues/6889
This fixes the case where the user quits by pressing Ctrl+C,
and some other minor things.
There is still another issue that sometimes causes a segfault during shutdown...
2021-04-03 01:44:42 +02:00
ThomasV
a4210ce5e7
Qt: remove the 'local watchtower' option from GUI.
...
It is not realistic to expect Electrum to be used as a watchtower
in GUI mode, and possibly counter-productive (may set wrong
expectations).
A proper watchtower should be configured as a daemon. The
documentation will be updated to reflect this change.
2021-03-28 10:44:03 +02:00
Neil Booth
8b5e312e7e
qt: fix handling BIP21 URI from e.g. website on macOS
...
fixes #6933
based on https://github.com/Electron-Cash/Electron-Cash/commit/e2171f702d0e83abe368d3013dccc5ee3577be6a
Co-authored-by: SomberNight <somber.night@protonmail.com >
2021-01-21 04:41:03 +01:00
SomberNight
95b08e9961
plugins: remove 'on_new_window' hook
2020-12-08 10:33:43 +01:00
bitromortac
4efcb53d24
network: load gossip db early
...
The gossip db is loaded early when the network is started to save
time when the gui is locked and a wallet not yet loaded. Side effects
of the LNWallet to start peering when a channel db is loaded is
circumvented.
2020-10-22 18:05:51 +02:00
ThomasV
9547a4e60c
Qt: override 'persist_daemon' option if users exits from menu
2020-06-30 11:16:27 +02:00
SomberNight
24221f8fca
plugins: fix labels plugin FIXME re "just enabled plugin"
2020-05-25 17:31:13 +02:00
SomberNight
a4bec80efe
(trivial) log Qt version at startup
2020-05-14 19:15:50 +02:00
ThomasV
8f41aeb783
Replace wallet backup with channel backups
...
- channels can be backed up individually
- backups are added to lnwatcher
- AbstractChannel ancestor class
2020-04-10 14:45:23 +02:00
SomberNight
e6d43b60fa
qt hww show_settings_dialog: don't scan devices in GUI thread
...
Just makes sense in general.
Also, previously, the GUI would freeze if right after startup the user
clicked the hww status bar icon (especially with multiple hww connected).
2020-04-01 21:09:06 +02:00
ThomasV
0d160cceea
Qt: test if lightinng is running
2020-03-06 11:23:26 +01:00
ThomasV
62eceeb573
Save and read lighting backups (Qt)
2020-02-15 16:28:15 +01:00
ThomasV
e1ce3aace7
Separate db from storage
...
- storage is content-agnostic
- db and storage are passed to wallet contructor
2020-02-10 17:45:23 +01:00
SomberNight
94888739d3
try to fix "--offline" mode
2020-01-09 19:23:24 +01:00
ThomasV
fc85dcead6
follow-up previous commit
2019-11-23 11:37:01 +01:00
ThomasV
6c62fb03ac
fix #5733
2019-11-23 11:02:31 +01:00
ThomasV
90ce9f195b
Allow user to enable lightning in the GUI. Make it a per-wallet setting.
2019-10-13 20:34:38 +02:00
ThomasV
af4a3328f7
Qt: separate lightning and watchtower dialogs
2019-10-12 14:30:52 +02:00
SomberNight
04edad9984
config: no longer singleton. it is passed to Wallet.__init__
...
The few other cases that used SimpleConfig.get_instance() now
either get passed a config instance, or they try to get a reference
to something else that has a reference to a config.
(see lnsweep, qt/qrcodewidget, qt/qrtextedit)
2019-09-22 20:46:01 +02:00
SomberNight
1a08063928
config: remove 'open_last_wallet' side-effecting
...
related: #5629
2019-09-10 17:10:52 +02:00
SomberNight
bcdb72ae93
qt: add some type hints
2019-09-09 22:19:36 +02:00
ThomasV
32e517f407
improve lightning_dialog GUI settings
2019-08-20 09:03:11 +02:00
ThomasV
f5c58c5e19
lightning network dialog
2019-08-20 09:03:11 +02:00
ThomasV
db60634774
use config instead of watchtower_window to decide if we close the app
2019-08-20 09:03:11 +02:00
Janus
f5cee9ecf6
lightning: post-rebase fixes, read_QIcon and invalid import
2019-08-20 09:03:11 +02:00
ThomasV
19e60f00bb
add watchtower_window
2019-08-20 09:03:11 +02:00
Janus
18963405ee
lightning: remove hub based approach, port qt gui to lnbase
2019-08-20 09:03:09 +02:00
Janus
d84eab0418
lightning: complete moving of lightning objects, acquire net/wallet lock while answering lightning requests
2019-08-20 09:03:09 +02:00
SomberNight
f60f690ca9
change many str(e) to repr(e) as some exceptions were cryptic
...
it's often valuable to see the type of the exception
(especially as for some exceptions str(e) == '')
2019-07-17 20:12:52 +02:00
SomberNight
e415c0d930
wallet: (fix) synchronizer would also resub closed wallets...
...
network cb was not removed, so Synchronizer and the wallet itself was
kept in memory; and Synchronizer kept working
2019-05-14 17:04:03 +02:00
SomberNight
f6dfcccf8c
qt: factor out util.MessageBoxMixin.msg_box into function and use it
...
so these dialogs also get our custom default settings applied,
e.g. their text is selectable by mouse
2019-05-13 23:59:29 +02:00
SomberNight
4db1535bce
qt wizard: catch wallet/bitcoin exceptions (regression)
...
fix #5342
2019-05-13 22:56:38 +02:00
SomberNight
00b2fee461
qt dark style: fix padding of PayToEdit
...
based on Electron-Cash/Electron-Cash@7e69f0e6ea
see ColinDuquesnoy/QDarkStyleSheet#159
2019-05-05 02:14:07 +02:00
SomberNight
3385a94753
logging: basics
2019-05-02 15:19:03 +02:00
SomberNight
99f9a1b484
qt: warn user if in testnet mode
...
closes #5295
2019-04-28 06:31:01 +02:00
SomberNight
d55a045405
qt wizard: minor clean-up
2019-03-04 02:20:34 +01:00
SomberNight
2da6692f73
wizard: some fixes
...
related: #5174
2019-03-04 02:08:23 +01:00
SomberNight
4b36114d0d
small fixups
2019-02-28 09:02:58 +01:00
ThomasV
7f2083f667
separate storage and database (JsonDB)
2019-02-28 09:02:58 +01:00
ThomasV
d5790ea109
wizard: do not use on storage object during wallet creation
2019-02-28 09:02:58 +01:00