Hello, I'm about to work on the String Conversion Callback in GTK+, and add XIMStringConversionSubstitution support to Thai XIM in XFree86.
So, I have a few questions about the protocol: 1. Backward Retrievals To request the client for backward retrievals (e.g. XIMBackwardChar direction): * Should the client return the string in reversed order? The cause of my doubt is that the X11R6.4 "Xlib C Language X Interface" section 13.5.7.3 "Input Method Semantics - String Conversion Callback" describes the text retrieval portion in terms of "starting position" and "ending position", which could also imply the order of the retrieved characters in the returning buffer to be reversed in cases of backward retrievals. (But I quietly hope it's not true, because I think non-reversed order is more natural in general.) Currently, the Thai XIM in XFree86 Xlib covers my fuzzy interpretation of the protocol loosely, and only one locally-patched program does provide the callback. But I need the precise thing when working with a toolkit like GTK+. 2. XIMStringConversionSubstitution * How can the input method know if the client supports only Retrieval, but not Substitution? Some applications, such as terminal emulators, may choose to support only Retrieval, but not Substitution. And the input method should not try to mess up the buffer in that case. Does the protocol define the XIMStringConversionCallbackStruct::text to be set to NULL by the client in that case? -Thep. -- Theppitak Karoonboonyanan Thai Linux Working Group (TLWG) http://linux.thai.net/thep/ _______________________________________________ I18n mailing list [EMAIL PROTECTED] http://XFree86.Org/mailman/listinfo/i18n
