Hi!<div><br></div><div>I was playing to add Function Ket support in the windows vm (yep, always the same :P), and looking at the code, I saw this in the recordKeyboardEvent:</div><div><br></div><div><div>evt = (sqKeyboardEvent*) sqNextEventPut();</div>
<div>  evt-&gt;type = EventTypeKeyboard;</div><div>  evt-&gt;timeStamp = msg-&gt;time;</div><div><b>  evt-&gt;charCode = keymap[keyCode &amp; 0xff];</b></div></div><div><b><br></b></div><div>the problem with that line is that KeyDown and KeyUp events send VirtualKeycodes as keycodes and the Char event sends a unicode char value.  And, it makes collisions, since for example</div>
<div><br></div><div>$p char value is 112</div><div>and F1 virtual code value is 112 too :P</div><div><br></div><div><a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms646276(v=vs.85).aspx">http://msdn.microsoft.com/en-us/library/windows/desktop/ms646276(v=vs.85).aspx</a>
</div><div><a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms646281(v=vs.85).aspx">http://msdn.microsoft.com/en-us/library/windows/desktop/ms646281(v=vs.85).aspx</a>
</div><div><a href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx">http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx</a>
</div><div><br></div><div>And so with other keys, having the same keycode in the image side with different keys...</div><div><br></div><div>I&#39;m trying a solution like this, providing in a Char event the keycode without mapping to the image:</div>
<div><br></div><div>...</div><div><div>    case WM_CHAR:</div><div>    case WM_SYSCHAR:</div><div>      /* Note: VK_RETURN is recorded as virtual key ONLY */</div><div>      if(keyCode == 13) return 1;</div><div>    <b>  charCode = keyCode;</b></div>
<div>      pressCode = EventKeyChar;</div></div><div>     break</div><div>...</div><div> evt-&gt;timeStamp = msg-&gt;time;</div><div><div><b>  evt-&gt;charCode = charCode? charCode : keymap[keyCode &amp; 0xff];</b></div><div>
  evt-&gt;pressCode = pressCode;</div></div><div>...</div><div><br></div><div>changing only the bold lines, and It seems to work.</div><div><br></div><div>What do you think?</div><div>Guille</div>