def test_write_config(self): os.environ['SUBIQUITY_REPLAY_TIMESCALE'] = '100' with tempfile.TemporaryDirectory() as tmpdir: model = KeyboardModel(tmpdir) new_setting = KeyboardSetting('fr', 'azerty') model.set_keyboard(new_setting) read_setting = KeyboardSetting.from_config_file(model.config_path) self.assertEqual(new_setting, read_setting)
def done(self, result): layout = self.form.layout.widget.value variant = '' if self.form.variant.widget.value is not None: variant = self.form.variant.widget.value setting = KeyboardSetting(layout=layout, variant=variant) new_setting = setting.latinizable() if new_setting != setting: self.show_stretchy_overlay(ToggleQuestion(self, new_setting)) return self.really_done(setting)
def load_autoinstall_data(self, data): if data is None: return setting = KeyboardSetting(**data) if self.model.setting != setting: self.needs_set_keyboard = True self.model.setting = setting
def start_ui(self): if self.model.current_lang is None: self.model.load_language('C') view = KeyboardView(self.model, self, self.opts) self.ui.set_body(view) if 'layout' in self.answers: layout = self.answers['layout'] variant = self.answers.get('variant', '') self.done(KeyboardSetting(layout=layout, variant=variant))
def default(self): if self.model.current_lang is None: self.model.load_language('C') title = "Keyboard configuration" if self.opts.run_on_serial: excerpt = 'Please select the layout of the keyboard directly attached to the system, if any.' else: excerpt = 'Please select your keyboard layout below, or select "Identify keyboard" to detect your layout automatically.' footer = _("Use UP, DOWN and ENTER keys to select your keyboard.") self.ui.set_header(title, excerpt) self.ui.set_footer(footer) view = KeyboardView(self.model, self, self.opts) self.ui.set_body(view) if 'layout' in self.answers: layout = self.answers['layout'] variant = self.answers.get('variant', '') self.done(KeyboardSetting(layout=layout, variant=variant))
def load_autoinstall_data(self, data): if data is not None: self.model.setting = KeyboardSetting(**data)
def run_answers(self): if 'layout' in self.answers: layout = self.answers['layout'] variant = self.answers.get('variant', '') self.done(KeyboardSetting(layout=layout, variant=variant), True)