Hi Anton, The fix looks good.
Thanks, Dmitry > On 9 Nov 2018, at 16:09, Anton Litvinov <anton.litvi...@oracle.com> wrote: > > Hello reviewers, > > This is a kind reminder. Could anybody please look at this review request? > > Thank you, > Anton > > On 02/11/2018 22:32, Anton Litvinov wrote: >> Hello, >> >> Could you please review the following fix for the bug. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8187364 >> Webrev: http://cr.openjdk.java.net/~alitvinov/8187364/jdk12/webrev.00 >> >> The bug consists in the fact that on MS Windows OS with the enabled Persian >> keyboard layout zero width non-joiner (ZWNJ) character, whose Unicode code >> is "\u200C", cannot be entered in Swing text components by means of >> "Ctrl+Shift+2" key combination. The bug does not affect AWT text components. >> >> CAUSE OF THE BUG: >> In the method >> "javax.swing.text.DefaultEditorKit.DefaultKeyTypedAction.actionPerformed(ActionEvent)" >> ZWNJ character "\u200C" is not inserted to the document of >> "javax.swing.JTextComponent" through the call >> "target.replaceSelection(content);", because a previous call to >> "sun.awt.SunToolkit.isPrintableCharacterModifiersMask(int)" method returns >> "false" for the case, when key modifiers integer variable equals 3 >> ("Ctrl+Shift" keys are pressed). >> >> THE FIX: >> The fix changes the method >> "DefaultEditorKit.DefaultKeyTypedAction.actionPerformed(ActionEvent)" to >> allow entering 2 listed below Unicode characters in the text component's >> document, when these characters are treated as non-printable. >> - "\u200C" - ZWNJ; >> - "\u200D" - zero width joiner (ZWJ), which is entered by "Ctrl+Shift+1" key >> combination with Persian keyboard layout. >> >> Thank you, >> Anton >