On Tue, 17 Oct 2023 20:21:30 GMT, Martin Fox <d...@openjdk.org> wrote:

> After finding the Window virtual key code for a character getKeyCodeForChar 
> was using a mapping table that only works correctly for U.S. English to 
> retrieve the Java key code. This caused getKeyCodeForChar to encode keys 
> differently than the original key event handling machinery.
> 
> With this fix the Robot, getKeyCodeForChar, and the code that handles 
> platform key events all agree on how Windows VK codes should map to Java 
> codes.
> 
> The manual KeyboardTest app can be used to test this (tests/manual/events). 
> Run the tests by selecting "without keypad combinations" in the second 
> dropdown. This will use a Robot to test KeyCharacterCombinations excluding 
> the numeric keypad (which is a separate issue).

Yes, that's expected. The \ key on the U.S. layout is in the same position as 
the * key on the French layout (on Windows).

Mac and Linux both have nice little keyboard viewing tools that you can pull up 
so you can see how all the keys change as you switch between layouts. I haven't 
found such a utility for Windows and it gets confusing.

-------------

PR Comment: https://git.openjdk.org/jfx/pull/1264#issuecomment-1788193298

Reply via email to