<AWT Dev> [11] RFR 8200353: Shift or Capslock not working in Textfield after accentued keystrokes
Dmitry Markov
dmitry.markov at oracle.com
Mon Jun 11 19:38:04 UTC 2018
Hello,
Could you review a fix for jdk11, please?
bug: https://bugs.openjdk.java.net/browse/JDK-8200353
webrev: http://cr.openjdk.java.net/~dmarkov/8200353/webrev.00/
The new mechanism of dead keys detection and processing was introduced by JDK-8139189 [1]. According to that changes dead key input is activated by WM_KEYDOWN and deactivated by WM_CHAR messages. However the function WindowsKeyToJavaChar() (which actually sets the flag deadKeyActive to true) is also called from _NativeHandleEvent() and in this case target component doesn't receive WM_CHAR message, (i.e. dead key input remains active).
At the same time _NativeHandleEvent() sends character back to the native window using WM_AWT_FORWARD_CHAR message. So it is necessary to disable dead key input, (i.e. set deadKeyActive to false) when WM_AWT_FORWARD_CHAR is received.
I ran related AWT/Swing regression tests and did not observe any new failures.
Thanks,
Dmitry
[1] - https://bugs.openjdk.java.net/browse/JDK-8139189
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20180611/4ee921a5/attachment.html>
More information about the awt-dev
mailing list