summaryrefslogtreecommitdiff
path: root/legacy/ecore/src/lib/ecore_x/xlib
diff options
context:
space:
mode:
authorCarsten Haitzler <raster@rasterman.com>2012-08-19 03:06:46 +0000
committerCarsten Haitzler <raster@rasterman.com>2012-08-19 03:06:46 +0000
commitc9b7e5663583777cc7b1e084160fc62207fe413e (patch)
tree8dc10d956f510cc8b1d248d29fb67ce4d1f82568 /legacy/ecore/src/lib/ecore_x/xlib
parentc7a59e832a09db73cd052b267b8ba5eb4bfd4c66 (diff)
also tell xkb to refresh mappings. :)
SVN revision: 75422
Diffstat (limited to 'legacy/ecore/src/lib/ecore_x/xlib')
-rw-r--r--legacy/ecore/src/lib/ecore_x/xlib/ecore_x_events.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_events.c b/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_events.c
index 797d8c9..fc08923 100644
--- a/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_events.c
+++ b/legacy/ecore/src/lib/ecore_x/xlib/ecore_x_events.c
@@ -2510,7 +2510,16 @@ _ecore_x_event_handle_xkb(XEvent *xevent)
2510 e->group = xkbev->state.group; 2510 e->group = xkbev->state.group;
2511 if (xkbev->any.xkb_type == XkbStateNotify) 2511 if (xkbev->any.xkb_type == XkbStateNotify)
2512 ecore_event_add(ECORE_X_EVENT_XKB_STATE_NOTIFY, e, NULL, NULL); 2512 ecore_event_add(ECORE_X_EVENT_XKB_STATE_NOTIFY, e, NULL, NULL);
2513 else if (xkbev->any.xkb_type == XkbNewKeyboardNotify) 2513 else if ((xkbev->any.xkb_type == XkbNewKeyboardNotify) ||
2514 ecore_event_add(ECORE_X_EVENT_XKB_NEWKBD_NOTIFY, e, NULL, NULL); 2514 (xkbev->any.xkb_type == XkbMapNotify))
2515 {
2516 if (xkbev->any.xkb_type == XkbMapNotify)
2517 {
2518 XkbMapNotifyEvent *xkbmapping = xkbev;
2519
2520 XkbRefreshKeyboardMapping(xkbmapping);
2521 }
2522 ecore_event_add(ECORE_X_EVENT_XKB_NEWKBD_NOTIFY, e, NULL, NULL);
2523 }
2515} 2524}
2516#endif /* ifdef ECORE_XKB */ 2525#endif /* ifdef ECORE_XKB */