[EMAIL PROTECTED] wrote: > > On Mon, 17 Feb 2003, Angus Leeming wrote: > >> Would this be what you _really_ wanted in the xforms input widget >> perhaps? >> >> // Or whatever test you now use to indicate that >> // precomposition is finished >> if (key == XKSpace and stored_kbuflen > 1) { >> int i; >> for (i = 0; i < stored_kbuflen; ++i) { >> draw_char(stored_keybuf[i], ...); >> } > > > Yes. In this way we removed the 'space' signal, because keeping the > signal makes CJK-input with kbuflen=2 disappear, remember?
I remember that we were trying to work out what the problem was and playing around. I don't see why adding draw_char(key, ...); below the loop above would cause problems. Does it really cause problems? Could you try for me. If you _can_ draw the space like this and want the space then I suspect that we don't need the complicated code in input.c at all. Ie, we can treat the two XEvents separately after all and get rid of the stored_keybuf nastiness. if (kbuflen > 1) { for (i = 0; i < stored_kbuflen; ++i) { draw_char(keybuf[i], ...); } } else if (isRegular(key)) { ... -- Angus