opt: optimize keymap set

This commit is contained in:
DreamMaoMao 2025-10-22 13:24:36 +08:00
parent 86cedaadca
commit c69b736d0e
3 changed files with 7 additions and 3 deletions

View file

@ -123,6 +123,10 @@ static const struct xkb_rule_names xkb_fallback_rules = {
.options = NULL,
};
static const struct xkb_rule_names xkb_default_rules = {
.options = NULL,
};
struct xkb_rule_names xkb_rules = {
/* can specify fields: rules, model, layout, variant, options */
/* example:

View file

@ -868,7 +868,7 @@ int switch_keyboard_layout(const Arg *arg) {
if (!check_keyboard_rules_validate(&rules)) {
wlr_log(WLR_ERROR,
"Keyboard rules validation failed, skipping layout reset");
rules = xkb_fallback_rules;
rules = xkb_default_rules;
}
char *layout_buf = (char *)rules.layout; // 假设这是可修改的

View file

@ -2329,7 +2329,7 @@ KeyboardGroup *createkeyboardgroup(void) {
if (!check_keyboard_rules_validate(&rules)) {
wlr_log(WLR_ERROR,
"Keyboard rules validation failed, skipping layout reset");
rules = xkb_fallback_rules;
rules = xkb_default_rules;
}
/* Prepare an XKB keymap and assign it to the keyboard group. */
@ -4571,7 +4571,7 @@ void reset_keyboard_layout(void) {
if (!check_keyboard_rules_validate(&rules)) {
wlr_log(WLR_ERROR,
"Keyboard rules validation failed, skipping layout reset");
rules = xkb_fallback_rules;
rules = xkb_default_rules;
}
// Create context