Certain characters are skipped on input of Korean text in Java text
components. This behaviour differs from input of Korean text in native OS X
applications (e.g. TextEdit).
.
To reproduce, run the sample program mentioned below, switch to Korean (2-Set) keyboard
layout, and press the following keys in order: q (corresponds to Korean
ㅂ), Shift+1 (exclamation mark).
Expected result: text field contains ㅂ!
Actual result: text field contains ㅂ
(i.e. exclamation mark is not entered)
.
The issue is reproduced on latest OS X version (10.11.5) and latest Java
version:
java version "1.8.0_92"
Java(TM) SE Runtime Environment (build 1.8.0_92-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.92-b14, mixed mode)
REPRODUCIBILITY :
The issue is always reproducible.
---------- BEGIN SOURCE ----------
import javax.swing.*;
public class JTextFieldTest {
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
JFrame frame = new JFrame("Test");
JTextField textField = new JTextField(20);
frame.add(textField);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
});
}
}
---------- END SOURCE ----------