Commit Graph

1344 Commits

Author SHA1 Message Date
SomberNight
3b0209a3a5 follow-up prev 2021-05-06 18:18:52 +02:00
bitromortac
853e912885 invoice: fail gracefully with large amount 2021-05-06 15:37:17 +02:00
SomberNight
ef3293ab6a kivy: relocate atlas so it can be made a submodule later 2021-04-30 16:44:32 +02:00
bitromortac
97b31880d7 kivy: improve openchannel dialog for trampoline 2021-04-30 13:32:07 +02:00
ThomasV
04b1e8718a tx dialog (Qt): if possible, save psbt and fully signed transaction under the same basename. 2021-04-26 12:31:04 +02:00
SomberNight
86ba37dc1c qt send tab: when clicking "Max", show tooltip explaining max amt
Beginner users often ask why they cannot send their full balance.
Hence, this intends to reduce support load.
In terms of UI, maybe there is a better way to do this but this was
easy to do and still a good first step IMHO.
2021-04-23 17:52:19 +02:00
SomberNight
37bde9baf9 qt: cpfp: fix handling "no dynamic fee estimates"
fixes #7237
2021-04-23 17:27:00 +02:00
SomberNight
1436760d3d qt coins tab: Ctrl+F now searches the whole prevout string
(not just the truncated string that is displayed in the list)
2021-04-22 20:56:00 +02:00
SomberNight
3b77340671 Qt MyTreeView: rm usages of Qt.UserRole, use explicit roles instead
This is a bit more verbose but it explicitly shows what data is being
used where.

Also rm implicitly setting editable_columns based on stretch_column.
2021-04-22 20:37:14 +02:00
ThomasV
8ce94248d4 kivy: update wizard message: pin->password 2021-04-21 10:33:11 +02:00
SomberNight
11bb39ee82 kivy: implement freezing channels 2021-04-19 18:57:47 +02:00
SomberNight
4e0a20ae46 gui messages: mv one more message to messages.py 2021-04-19 18:57:43 +02:00
SomberNight
0ab9687734 kivy: make ActionDropdown disappear when an action is selected 2021-04-19 18:57:39 +02:00
SomberNight
e15a11a437 kivy: use ActionDropdown in ChannelDetailsPopup 2021-04-19 18:04:15 +02:00
SomberNight
b8ec85d615 kivy tx dialog: abstract away ActionDropdown, mv into its own file 2021-04-19 18:01:22 +02:00
SomberNight
b27925c6c5 kivy tx dialog: dscancel btn text was too long
see first part of #6868
2021-04-19 16:40:57 +02:00
SomberNight
4f6c0c2c61 kivy bump fee dialog: handle no dynamic fee estimates
fix #7220
2021-04-19 16:06:43 +02:00
ThomasV
8f95dc2640 Merge pull request #7211 from SomberNight/202104_keep_early_logs
logging: don't lose log messages during early startup
2021-04-18 20:56:24 +02:00
Benoit Verret
2cc16f8ed4 Avoid hiding QR codes with help_text
In some situations, if a QR code's data and help_text were too long,
the QR code was unscannable.
2021-04-17 22:54:37 -04:00
SomberNight
f53f177203 kivy swaps: handle no dynamic fee estimates
fixes #7215
2021-04-15 18:50:54 +02:00
SomberNight
9a38c4d2a1 logging: don't lose log messages during early startup
Previously, during early-startup (until configure_logging(config) is
called in run_electrum),
- the stderr log handler lost all log messages below warning level, and
- the file log handler lost all log messages regardless of log level

We now instead start buffering log messages in memory as soon as
electrum.logging is imported. The buffer is dumped into the
stderr and file log handlers when they are fully set up, and then
the buffer is discarded (and the temporary log handler is removed).

Note that messages are not logged until configure_logging() is called.
Previously WARNING/ERROR messages would get logged immediately to stderr,
but not anymore. This was changed so that the order of the log messages
can be kept intact. (if we log WARNINGs immediately, but need to delay
INFOs until the config is available, messages would either be out of order
or alternatively there would be duplicates)

Relatedly, we now follow the recommendation of the python docs re
logging for libraries [0]: we try to only configure logging if running via
run_electrum (the main script) and not when e.g. a 3rd party script
imports electrum.

[0]: https://docs.python.org/3/howto/logging.html#configuring-logging-for-a-library
2021-04-14 19:14:26 +02:00
SomberNight
12fac3a167 fix running with --offline 2021-04-13 19:05:07 +02:00
SomberNight
0ee9442972 qt update notifications: add another key for redundancy 2021-04-08 14:39:36 +02:00
SomberNight
3d9798757d android: update app icon; use "adaptive icons" on API 26+
see https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive

p4a and buildozer had to be patched for this; I will try to upstream the patches, see:
https://github.com/kivy/python-for-android/pull/2446
https://github.com/kivy/buildozer/pull/1312
2021-04-08 13:33:41 +02:00
ThomasV
f815f8eb30 Merge pull request #7178 from SomberNight/202104_kivy_freeze_addrs
kivy: implement freezing addresses
2021-04-07 17:24:38 +02:00
SomberNight
dfc0f896b7 icons: clean up electrum svg icons
- change viewport to square, no cropping, add small margins
- rm invisible objects
2021-04-07 17:15:48 +02:00
ThomasV
1b763b4a3c add electrum svg icons 2021-04-06 19:04:17 +02:00
ThomasV
f7a8166b9c new icons for android 2021-04-06 18:57:30 +02:00
SomberNight
c41cd4ae04 qt init: move Ctrl-C handling earlier 2021-04-06 18:27:28 +02:00
SomberNight
84ec734385 kivy: implement freezing addresses 2021-04-04 23:00:57 +02:00
SomberNight
c1cb2e67f6 qt channels dialog: handle funding tx missing
see https://github.com/spesmilo/electrum/issues/7175#issuecomment-813058152
2021-04-04 19:07:01 +02:00
Benoit Verret
2fce31c5ec Show txid in text GUI 2021-04-03 23:59:11 -04:00
SomberNight
349a033ce6 qt: fix some widget parenting issues
If you force-show a widget (e.g. `w.setVisible(True)`) before parenting it,
a small window will flash (appear and disappear) for a fraction of second,
which is a bit irritating.
2021-04-04 01:43:49 +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
ThomasV
e64aed2aec android backups: fix missing parameter 2021-04-03 14:28:36 +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
039d11e350 Qt swap dialog: do not call update() from the asyncio thread. Fixes some segfaults that were triggered by opening the dialog 2021-04-02 15:33:37 +02:00
SomberNight
210ff647fa i18n: don't translate empty string
see #7158

```
$ ./contrib/pull_locale
Found 260 files to translate
Generate template
electrum/gui/qt/installwizard.py:265: warning: Empty msgid.  It is reserved by GNU gettext:
                                               gettext("") returns the header entry with
                                               meta information, not the empty string.
electrum/gui/qt/channels_list.py:49: warning: Empty msgid.  It is reserved by GNU gettext:
                                              gettext("") returns the header entry with
                                              meta information, not the empty string.
```
2021-04-01 03:33:16 +02:00
ThomasV
e13e0b11f1 Do not display the warning about static backups in init_lightning. It is not useful to display the same message twice. 2021-03-31 11:00:55 +02:00
ThomasV
bf6ecb6418 make init_lightning callable at runtime, without reloading the wallet 2021-03-31 10:57:36 +02:00
ThomasV
4b586d9cf0 kivy: remove dead code (follow-up 64a931f21e) 2021-03-31 09:51:16 +02:00
ThomasV
0459d4adb9 history_list: use from_timestamp and to_timestamp in summary 2021-03-31 06:07:29 +02:00
ThomasV
b0cf9dbeb3 kivy: remove unnecessary friction in _enable_lightning 2021-03-31 05:34:34 +02:00
SomberNight
537ec92460 wallet: change init_lightning to sometimes create deterministic LN keys 2021-03-30 21:53:18 +02:00
SomberNight
7b7bba2299 wallet_db: put 'seed_type' into keystores (incl db upgrade) 2021-03-30 21:16:14 +02:00