mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-09-11 13:36:13 +03:00
Keymap: Fix switching selected keymap
Previously keymap did switching of the selected keymap twice when the command was executed. First set it to the first keymap on the list and later, if present, to the chosen one. Currently the switching to the first keymap on the list is done only when the selection is not present or it's not on the list of keymaps.
This commit is contained in:
parent
54687c63af
commit
a0ffdeb58a
Notes:
sideshowbarker
2024-07-19 17:05:05 +09:00
Author: https://github.com/pawlos Commit: https://github.com/SerenityOS/serenity/commit/a0ffdeb58a9 Pull-request: https://github.com/SerenityOS/serenity/pull/14067
@ -55,8 +55,6 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
|
||||
auto mapper_config = TRY(Core::ConfigFile::open("/etc/Keyboard.ini", Core::ConfigFile::AllowWriting::Yes));
|
||||
|
||||
int rc = 0;
|
||||
|
||||
if (!mappings.is_empty()) {
|
||||
auto mappings_vector = mappings.split(',');
|
||||
|
||||
@ -77,10 +75,6 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
auto keymaps = String::join(',', mappings_vector);
|
||||
mapper_config->write_entry("Mapping", "Keymaps", keymaps);
|
||||
TRY(mapper_config->sync());
|
||||
rc = set_keymap(mappings_vector.first());
|
||||
if (rc != 0) {
|
||||
return rc;
|
||||
}
|
||||
}
|
||||
|
||||
auto keymaps = mapper_config->read_entry("Mapping", "Keymaps");
|
||||
@ -95,14 +89,13 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
|
||||
}
|
||||
|
||||
if (!keymaps_vector.find(mapping).is_end()) {
|
||||
rc = set_keymap(mapping);
|
||||
if (rc != 0) {
|
||||
int rc = set_keymap(mapping);
|
||||
if (rc == 0)
|
||||
return rc;
|
||||
}
|
||||
} else {
|
||||
warnln("Keymap '{}' is not in list of configured keymaps ({})", mapping, keymaps);
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return set_keymap(keymaps_vector.first());
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user