if (g_ascii_islower(aclass[0]))
aclass[0] = g_ascii_toupper(aclass[0]);
- g_print("Opening Input Method for %s %s\n", aname, aclass);
xim = XOpenIM(obt_display, NULL, aname, aclass);
if (!xim)
case XK_Super_L:
case XK_Super_R: return OBT_KEYBOARD_MODKEY_SUPER;
case XK_Hyper_L:
- case XK_Hyper_R: return OBT_KEYBOARD_MODKEY_SUPER;
+ case XK_Hyper_R: return OBT_KEYBOARD_MODKEY_HYPER;
case XK_Meta_L:
- case XK_Meta_R: return OBT_KEYBOARD_MODKEY_SUPER;
+ case XK_Meta_R: return OBT_KEYBOARD_MODKEY_META;
case XK_Control_L:
case XK_Control_R: return OBT_KEYBOARD_MODKEY_CONTROL;
case XK_Shift_L:
{
if (--ic->ref < 1) {
xic_all = g_slist_remove(xic_all, ic);
- XDestroyIC(ic->xic);
+ if (ic->xic)
+ XDestroyIC(ic->xic);
g_slice_free(ObtIC, ic);
}
}