Dmitry Timoshkov wrote:
X11DRV_ToUnicodeEx is a backend of the Win32 API ToUnicodeEx and it takes a virtual key code. I.e. ToUnicodeEx takes a predefined input and should return data very closely resembling what Windows does.
Ok, then maybe we should have TranslateMessage not call that, and use something else instead? This is particularly prominent from this sentence in the ToUnicodeEx documentation (http://msdn2.microsoft.com/en-us/library/ms646322.aspx):
The parameters supplied to the ToUnicodeEx function might not be sufficient to translate the virtual-key code because a previous dead key is stored in the keyboard layout.
Maybe I don't understand the code well enough, but it seems to me that we report on the dead-key press, but not translate the following character. Is that correct?
Shachar