1d484ea37a
Evdev needs to use its own keyboard model to work right.
18 lines
815 B
Diff
18 lines
815 B
Diff
diff --git a/plugins/keyboard/gsd-keyboard-xkb.c b/plugins/keyboard/gsd-keyboard-xkb.c
|
|
index a633167..7896d85 100644
|
|
--- a/plugins/keyboard/gsd-keyboard-xkb.c
|
|
+++ b/plugins/keyboard/gsd-keyboard-xkb.c
|
|
@@ -152,6 +152,12 @@ apply_xkb_settings (void)
|
|
|
|
gkbd_keyboard_config_load_from_x_current (¤t_sys_kbd_config,
|
|
NULL);
|
|
+ /* Ignore model if using evdev, since evdev needs its own model
|
|
+ */
|
|
+ if (strcmp (initial_sys_kbd_config.model, "evdev") == 0) {
|
|
+ g_free (current_kbd_config.model);
|
|
+ current_kbd_config.model = g_strdup ("evdev");
|
|
+ }
|
|
/* Activate - only if different! */
|
|
if (!gkbd_keyboard_config_equals
|
|
(¤t_kbd_config, ¤t_sys_kbd_config)) {
|