Qt: invert trampoline checkbox in settings dialog. Share the help message with Kivy
This commit is contained in:
@@ -9,6 +9,7 @@ from electrum.gui.kivy.i18n import _
|
|||||||
from electrum.plugin import run_hook
|
from electrum.plugin import run_hook
|
||||||
from electrum import coinchooser
|
from electrum import coinchooser
|
||||||
|
|
||||||
|
from electrum.gui import messages
|
||||||
from electrum.gui.kivy import KIVY_GUI_PATH
|
from electrum.gui.kivy import KIVY_GUI_PATH
|
||||||
|
|
||||||
from .choice_dialog import ChoiceDialog
|
from .choice_dialog import ChoiceDialog
|
||||||
@@ -155,11 +156,7 @@ class SettingsDialog(Factory.Popup):
|
|||||||
self._unit_dialog.open()
|
self._unit_dialog.open()
|
||||||
|
|
||||||
def routing_dialog(self, item, dt):
|
def routing_dialog(self, item, dt):
|
||||||
description = \
|
description = _(messages.MSG_HELP_TRAMPOLINE)
|
||||||
_('Lightning payments require finding a path through the Lightning Network.')\
|
|
||||||
+ ' ' + ('You may use trampoline routing, or local routing (gossip).')\
|
|
||||||
+ ' ' + ('Downloading the network gossip uses quite some bandwidth and storage, and is not recommended on mobile devices.')\
|
|
||||||
+ ' ' + ('If you use trampoline, you can only open channels with trampoline nodes.')
|
|
||||||
def cb(text):
|
def cb(text):
|
||||||
self.app.use_gossip = (text == 'Gossip')
|
self.app.use_gossip = (text == 'Gossip')
|
||||||
dialog = ChoiceDialog(
|
dialog = ChoiceDialog(
|
||||||
|
|||||||
@@ -25,3 +25,9 @@ It may be imported in another Electrum wallet with the same seed.
|
|||||||
MSG_LIGHTNING_WARNING = """
|
MSG_LIGHTNING_WARNING = """
|
||||||
Electrum uses static channel backups. If you lose your wallet file, you will need to request your channel to be force-closed by the remote peer in order to recover your funds. This assumes that the remote peer is reachable, and has not lost its own data.
|
Electrum uses static channel backups. If you lose your wallet file, you will need to request your channel to be force-closed by the remote peer in order to recover your funds. This assumes that the remote peer is reachable, and has not lost its own data.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
MSG_HELP_TRAMPOLINE = """
|
||||||
|
Lightning payments require finding a path through the Lightning Network. You may use trampoline routing, or local routing (gossip).
|
||||||
|
|
||||||
|
Downloading the network gossip uses quite some bandwidth and storage, and is not recommended on mobile devices. If you use trampoline, you can only open channels with trampoline nodes.
|
||||||
|
"""
|
||||||
|
|||||||
@@ -142,13 +142,12 @@ class SettingsDialog(WindowModalDialog):
|
|||||||
recov_cb.setEnabled(not bool(self.config.get('lightning_listen')))
|
recov_cb.setEnabled(not bool(self.config.get('lightning_listen')))
|
||||||
lightning_widgets.append((recov_cb, None))
|
lightning_widgets.append((recov_cb, None))
|
||||||
|
|
||||||
help_gossip = _("""If this option is enabled, Electrum will download the network
|
help_trampoline = _(messages.MSG_HELP_TRAMPOLINE)
|
||||||
channels graph and compute payment path locally, instead of using trampoline payments. """)
|
trampoline_cb = QCheckBox(_("Use trampoline routing (disable gossip)"))
|
||||||
gossip_cb = QCheckBox(_("Enable gossip (disable trampoline)"))
|
trampoline_cb.setToolTip(messages.to_rtf(help_trampoline))
|
||||||
gossip_cb.setToolTip(help_gossip)
|
trampoline_cb.setChecked(not bool(self.config.get('use_gossip', False)))
|
||||||
gossip_cb.setChecked(bool(self.config.get('use_gossip', False)))
|
def on_trampoline_checked(use_trampoline):
|
||||||
def on_gossip_checked(x):
|
use_gossip = not bool(use_trampoline)
|
||||||
use_gossip = bool(x)
|
|
||||||
self.config.set_key('use_gossip', use_gossip)
|
self.config.set_key('use_gossip', use_gossip)
|
||||||
if use_gossip:
|
if use_gossip:
|
||||||
self.window.network.start_gossip()
|
self.window.network.start_gossip()
|
||||||
@@ -158,8 +157,8 @@ channels graph and compute payment path locally, instead of using trampoline pay
|
|||||||
util.trigger_callback('ln_gossip_sync_progress')
|
util.trigger_callback('ln_gossip_sync_progress')
|
||||||
# FIXME: update all wallet windows
|
# FIXME: update all wallet windows
|
||||||
util.trigger_callback('channels_updated', self.wallet)
|
util.trigger_callback('channels_updated', self.wallet)
|
||||||
gossip_cb.stateChanged.connect(on_gossip_checked)
|
trampoline_cb.stateChanged.connect(on_trampoline_checked)
|
||||||
lightning_widgets.append((gossip_cb, None))
|
lightning_widgets.append((trampoline_cb, None))
|
||||||
|
|
||||||
help_remote_wt = ' '.join([
|
help_remote_wt = ' '.join([
|
||||||
_("A watchtower is a daemon that watches your channels and prevents the other party from stealing funds by broadcasting an old state."),
|
_("A watchtower is a daemon that watches your channels and prevents the other party from stealing funds by broadcasting an old state."),
|
||||||
|
|||||||
Reference in New Issue
Block a user