RFR: 8274967: KeyCharacterCombinations for punctuation and symbols fail on non-US keyboards

Martin Fox duke at openjdk.org
Tue Oct 17 20:30:01 UTC 2023


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).

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

Commit messages:
 - Merge remote-tracking branch 'upstream/master' into wincharcombo2
 - Fixing KeyCharacterCombinations on Windows

Changes: https://git.openjdk.org/jfx/pull/1264/files
 Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1264&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8274967
  Stats: 18 lines in 1 file changed: 16 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jfx/pull/1264.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1264/head:pull/1264

PR: https://git.openjdk.org/jfx/pull/1264


More information about the openjfx-dev mailing list