9 typedef struct W_IMContext
{
12 struct W_ICContext
*icList
;
16 typedef struct W_ICContext
{
17 struct W_ICContext
*next
;
18 struct W_ICContext
*prev
;
26 W_InitIMStuff(WMScreen
*scr
)
30 ctx
= scr
->imctx
= wmalloc(sizeof(WMIMContext
));
32 ctx
->xim
= XOpenIM(scr
->display
, NULL
, NULL
, NULL
);
33 if (ctx
->xim
== NULL
) {
34 wwarning("could not open IM");
38 // XGetIMValues(scr->display,
43 W_CloseIMStuff(WMScreen
*scr
)
49 XCloseIM(scr
->imctx
->xim
);
57 W_CreateIC(WMView
*view
)
59 WMScreen
*scr
= W_VIEW_SCREEN(view
);
63 ctx
->next
= scr
->imctx
->icList
;
64 if (scr
->imctx
->icList
)
65 scr
->imctx
->icList
->prev
= ctx
;
71 W_DestroyIC(WMICContext
*ctx
)
80 W_LookupString(WMView
*view
, XKeyEvent
*event
,
81 char buffer
, int bufsize
, KeySym ksym
)