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
;
25 Bool
W_InitIMStuff(WMScreen
*scr
)
29 ctx
= scr
->imctx
= wmalloc(sizeof(WMIMContext
));
31 ctx
->xim
= XOpenIM(scr
->display
, NULL
, NULL
, NULL
);
32 if (ctx
->xim
== NULL
) {
33 wwarning("could not open IM");
37 // XGetIMValues(scr->display,
41 void W_CloseIMStuff(WMScreen
*scr
)
47 XCloseIM(scr
->imctx
->xim
);
54 WMICContext
*W_CreateIC(WMView
*view
)
56 WMScreen
*scr
= W_VIEW_SCREEN(view
);
60 ctx
->next
= scr
->imctx
->icList
;
61 if (scr
->imctx
->icList
)
62 scr
->imctx
->icList
->prev
= ctx
;
67 void W_DestroyIC(WMICContext
*ctx
)
75 int W_LookupString(WMView
*view
, XKeyEvent
*event
,
76 char buffer
, int bufsize
, KeySym ksym
)