Caches the native language description

To be reused in other parts of the client UI
This commit is contained in:
Carlos Nihelton 2022-08-23 09:50:17 -03:00
parent 1d9b7449d3
commit 7502b48147
No known key found for this signature in database
GPG Key ID: 6FE346D245197E9A
4 changed files with 10 additions and 6 deletions

View File

@ -133,6 +133,7 @@ class SubiquityClient(TuiApplication):
self.server_updated = None
self.restarting = False
self.global_overlays = []
self.native_language = ""
try:
self.our_tty = os.ttyname(0)

View File

@ -37,11 +37,13 @@ class WelcomeController(SubiquityTuiController):
def run_answers(self):
if 'lang' in self.answers:
self.done(self.answers['lang'])
self.done((self.answers['lang'], ""))
def done(self, code):
def done(self, lang):
(code, native) = lang
log.debug("WelcomeController.done %s next_screen", code)
i18n.switch_language(code)
self.app.native_language = native
self.app.next_screen(self.endpoint.POST(code))
def cancel(self, sender=None):

View File

@ -22,7 +22,7 @@ class WelcomeViewTests(unittest.TestCase):
view = self.make_view_with_languages([('code', 'native')])
but = view_helpers.find_button_matching(view, "^native$")
view_helpers.click(but)
view.controller.done.assert_called_once_with('code')
view.controller.done.assert_called_once_with(('code', 'native'))
def test_initial_focus(self):
# The initial focus for the view is the button for the first

View File

@ -85,7 +85,7 @@ class WelcomeView(BaseView):
forward_btn(
label=native,
on_press=self.choose_language,
user_arg=code))
user_arg=(code, native)))
lb = ListBox(btns)
back = None
@ -98,9 +98,10 @@ class WelcomeView(BaseView):
buttons=[back] if back else None,
excerpt=_("Use UP, DOWN and ENTER keys to select your language."))
def choose_language(self, sender, code):
def choose_language(self, sender, lang):
(code, _) = lang
log.debug('WelcomeView %s', code)
self.controller.done(code)
self.controller.done(lang)
def local_help(self):
return _("Help choosing a language"), _(HELP)