|
|
@ -1,3 +1,5 @@ |
|
|
|
from typing import TYPE_CHECKING |
|
|
|
|
|
|
|
from kivy.app import App |
|
|
|
from kivy.factory import Factory |
|
|
|
from kivy.properties import ObjectProperty |
|
|
@ -14,6 +16,10 @@ from electrum.gui.kivy import KIVY_GUI_PATH |
|
|
|
|
|
|
|
from .choice_dialog import ChoiceDialog |
|
|
|
|
|
|
|
if TYPE_CHECKING: |
|
|
|
from ...main_window import ElectrumWindow |
|
|
|
|
|
|
|
|
|
|
|
Builder.load_string(''' |
|
|
|
#:import partial functools.partial |
|
|
|
#:import _ electrum.gui.kivy.i18n._ |
|
|
@ -110,7 +116,7 @@ Builder.load_string(''' |
|
|
|
|
|
|
|
class SettingsDialog(Factory.Popup): |
|
|
|
|
|
|
|
def __init__(self, app): |
|
|
|
def __init__(self, app: 'ElectrumWindow'): |
|
|
|
self.app = app |
|
|
|
self.plugins = self.app.plugins |
|
|
|
self.config = self.app.electrum_config |
|
|
@ -132,8 +138,9 @@ class SettingsDialog(Factory.Popup): |
|
|
|
self.has_pin_code = self.app.has_pin_code() |
|
|
|
self.enable_toggle_use_recoverable_channels = bool(self.wallet.lnworker and self.wallet.lnworker.has_deterministic_node_id()) |
|
|
|
|
|
|
|
def get_language_name(self): |
|
|
|
return languages.get(self.config.get('language', 'en_UK'), '') |
|
|
|
def get_language_name(self) -> str: |
|
|
|
lang = self.config.get('language') or '' |
|
|
|
return languages.get(lang) or languages.get('') or '' |
|
|
|
|
|
|
|
def change_password(self, dt): |
|
|
|
self.app.change_password(self.update) |
|
|
@ -143,7 +150,7 @@ class SettingsDialog(Factory.Popup): |
|
|
|
|
|
|
|
def language_dialog(self, item, dt): |
|
|
|
if self._language_dialog is None: |
|
|
|
l = self.config.get('language', 'en_UK') |
|
|
|
l = self.config.get('language') or '' |
|
|
|
def cb(key): |
|
|
|
self.config.set_key("language", key, True) |
|
|
|
item.lang = self.get_language_name() |
|
|
|