@@ -257,9 +257,16 @@ static void new_input_listener_notify(struct wl_listener *listener, void *data)
|
||||
keyboard->server = wm;
|
||||
keyboard->wlr_keyboard = wlr_keyboard;
|
||||
|
||||
struct xkb_rule_names const rule_names = {
|
||||
.options = wm->cman->cfg.input.keyboard.xkb_options,
|
||||
};
|
||||
|
||||
wlr_log(LOG_INFO, "xkb_options=%s",
|
||||
wm->cman->cfg.input.keyboard.xkb_options);
|
||||
|
||||
struct xkb_context *context = xkb_context_new(XKB_CONTEXT_NO_FLAGS);
|
||||
struct xkb_keymap *keymap = xkb_keymap_new_from_names(
|
||||
context, NULL, XKB_KEYMAP_COMPILE_NO_FLAGS);
|
||||
context, &rule_names, XKB_KEYMAP_COMPILE_NO_FLAGS);
|
||||
|
||||
wlr_keyboard_set_keymap(wlr_keyboard, keymap);
|
||||
xkb_keymap_unref(keymap);
|
||||
|
||||
Reference in New Issue
Block a user