X11: Recompile keymaps on XkbNewKeyboardNotify events

Hopefully fixes #2726
This commit is contained in:
Kovid Goyal
2020-06-05 22:11:15 +05:30
parent 24ca919f33
commit c7c14f184c
2 changed files with 7 additions and 2 deletions

7
glfw/x11_window.c vendored
View File

@@ -1177,8 +1177,11 @@ static void processEvent(XEvent *event)
{
XkbEvent *kb_event = (XkbEvent*)event;
switch(kb_event->any.xkb_type) {
case XkbNewKeyboardNotify:
if(!glfw_xkb_update_x11_keyboard_id(&_glfw.x11.xkb)) return;
case XkbNewKeyboardNotify: {
int32_t old_id = _glfw.x11.xkb.keyboard_device_id;
if (!glfw_xkb_update_x11_keyboard_id(&_glfw.x11.xkb)) return;
if (old_id != _glfw.x11.xkb.keyboard_device_id) keymap_dirty = true;
}
/* fallthrough */
case XkbMapNotify:
{