So, through some collaboration between Hashao and myself, we've gotten our frame and keyboard code to use a GtkIMContext. I'm not sure if our usage is entirely correct - there's no documentation on IM contexts that we can find, and I can't decipher all of the uses from GtkEntry and GtkTextView, particularly why/when we have to "reset" an IMContext, or what the 3 signals besides "commit" really do, and how one might use them properly.
English text entry seems to work as well as it did before this patch, though I needed a HACK to get the space key to work. But I was able to write a page of text, and things worked. Someone will need to investigate this space key business. The keybindings still seem to work (Ctrl+S, Ctrl+I, Ctrl+U, Ctrl+B tested). The Alt modifiers still seem to work (Alt+F gets me the file menu, at least). We now also have an "Input Methods" submenu (bug 4432), much like GtkEntry and GtkTextView, where one can change the input method being used. God knows if this works correctly. I did change it to "Vietnamese" and now some keystrokes get eaten, which is sort-of what's supposed to happen, I think. Testing would be much appreciated. Bugreports and patches are even more welcomed. This is a step in the right direction. How large of one remains to be seen. Dom CVS: ---------------------------------------------------------------------- CVS: Enter Log. Lines beginning with `CVS:' are removed automatically CVS: CVS: Committing in . CVS: CVS: Modified Files: CVS: src/af/ev/unix/ev_UnixKeyboard.cpp CVS: src/af/ev/unix/ev_UnixKeyboard.h CVS: src/af/xap/unix/xap_UnixFrameImpl.cpp CVS: src/af/xap/unix/xap_UnixFrameImpl.h CVS: src/af/xap/xp/xap_String_Id.h CVS: ---------------------------------------------------------------------- __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com
