On Thu, 23 Dec 2021 20:50:53 GMT, Martin Fox <d...@openjdk.org> wrote:

> When processing a `WM_CHAR` event on an OEM key (punctuation, symbol, dead 
> key) the glass code will dynamically query the key's unshifted character to 
> determine the Java code to assign to it. This is necessary since the 
> relationship between OEM key codes and the characters they generate varies 
> from layout to layout.
> 
> The Robot implementation was consulting a table which assumed a fixed 
> relationship between Java codes and Windows key codes even for the OEM keys. 
> The table was also missing entries for any Java code not on a US QWERTY 
> layout, like PLUS.
> 
> In this PR if we don't find the Java code in the table or if it maps to an 
> OEM key (which may be wrong) we sweep through all the OEM keys looking for 
> the matching Java code.

This pull request has now been integrated.

Changeset: 3d6f3288
Author:    Martin Fox <belden...@users.noreply.github.com>
Committer: Kevin Rushforth <k...@openjdk.org>
URL:       
https://git.openjdk.org/jfx/commit/3d6f3288ace658900e9af11792d7dd444ad55277
Stats:     181 lines in 3 files changed: 114 ins; 57 del; 10 mod

8278938: [Win] Robot can target wrong key for punctuation and symbols

Reviewed-by: jpereda, kcr

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

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

Reply via email to