[Mono-winforms-list] patch for enabling primitive XIM text input

Atsushi Eno atsushi at ximian.com
Fri Mar 14 13:49:05 EDT 2008


Hi guys,

I've lately solved couple of puzzles around XIM and I can enter
characters from XIM now.
I had couple of extra changes (from my experimental fixes), so I reduced
the changes and
now it is trimmed down to the attached patch, which should be without
any side effect.

Can someone review it or can I apply these changes? Those XIM support
work will go on
as there should be couple more of improvements, but incremental changes
would be
better (at least for me :).

After these changes, we'll still need:
- better Preedit/Status support (currently it has been
PreeditNothing/StatusNothing).
- some fixage for some IM engine for preedit window (I disabled one
XMapWindow() that
is however required for "atokx3" or iiimf).
- add some context menu items for international text input to TextBox
and RichTextBox.

I have some prepared answers for possible questions:
- I needed to change StringBuilder argument to byte[] in
Xutf8LookupString() because it returns
length in UTF-8 bytes and the string length cannot be retrieved with
StringBuilder.
- I had to move EnsureKeyboardInitialized() to very early stage i.e.
X11Keyboard.ctor()
because the late initialization somehow caused missing IM startup sometimes.
- XFilterEvent() is required for non-KeyPress/KeyRelease event for some
(or every?) IM engine(s)
especially as for ClientMessageEvent.

Atsushi Eno

-------------- next part --------------
A non-text attachment was scrubbed...
Name: xim-20080314.patch
Type: text/x-patch
Size: 9150 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-winforms-list/attachments/20080315/a630557f/attachment-0001.bin 


More information about the Mono-winforms-list mailing list