<AWT Dev> [9] Review request for 8028617: Dvorak keyboard mapping not honored when ctrl key pressed

Anthony Petrov anthony.petrov at oracle.com
Fri May 23 15:35:25 UTC 2014


Hi Anton,

If you activate the CAPS LOCK mode and type some characters, will those 
be presented as capital letters in Swing/AWT's text fields and text 
areas after your fix? (see [1] for a related FX bug)

[1] https://javafx-jira.kenai.com/browse/RT-16616

--
best regards,
Anthony

On 5/23/2014 7:14 PM, anton nashatyrev wrote:
> Hello,
>      could you please review the following fix:
>
> fix: http://cr.openjdk.java.net/~anashaty/8028617/9/webrev.00/
> <http://cr.openjdk.java.net/%7Eanashaty/8028617/9/webrev.00/>
> bug: https://bugs.openjdk.java.net/browse/JDK-8028617
>
>      Problem: Dvorak keyboard mapping not honored when Ctrl key pressed
>
>      Evaluation:
>          The problem is in the AWTView.m:deliverJavaKeyEventHelper():
> for taking a character we use NSEvent::characters which works fine until
> the Ctrl modifier is pressed. In this case the 'charaters' returns empty
> string. The typed character is then calculated via key code using the
> standard keyboard layout. Of course that doesn't work for any other
> layout including DVORAK.
>
>      Fix: We should use NSEvent::charactersIgnoringModifiers property
> instead (especially taking into account that
> sun.lwawt.macosx.event.NSEvent constructor parameter name is
> 'charactersIgnoringModifiers')
>
> Thanks!
> Anton.


More information about the awt-dev mailing list