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). Typing \ and Shift-\ on French keyboard, getting KeyEvent{type=KEY_PRESSED, character=, text=*, code=ASTERISK} KeyEvent{type=KEY_TYPED, character=*, text=, code=UNDEFINED} KeyEvent{type=KEY_RELEASED, character=, text=*, code=ASTERISK} KeyEvent{type=KEY_PRESSED, character=, text=, code=SHIFT, shift} KeyEvent{type=KEY_PRESSED, character=, text=*, code=ASTERISK, shift} KeyEvent{type=KEY_TYPED, character=ยต, text=, code=UNDEFINED, shift} KeyEvent{type=KEY_RELEASED, character=, text=*, code=ASTERISK, shift} KeyEvent{type=KEY_RELEASED, character=, text=, code=SHIFT} is this expected? (I am using Tools -> Keyboard Event Viewer in the Monkey Tester https://github.com/andy-goryachev-oracle/MonkeyTest ) ------------- PR Comment: https://git.openjdk.org/jfx/pull/1264#issuecomment-1788102989