JDK-8148984 : [macosx] Chinese Comma cannot be entered using Pinyin Input Method on OS X
Type:Bug
Component:client-libs
Sub-Component:java.awt
Affected Version:8u72,9
Priority:P3
Status:Resolved
Resolution:Fixed
OS:os_x
Submitted:2016-02-03
Updated:2016-11-28
Resolved:2016-07-04
The Version table provides details related to the release that this issue/RFE will be addressed.
Unresolved : Release in which this issue/RFE will be addressed. Resolved: Release in which this issue/RFE has been resolved. Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.
Cannot input Chinese comma (fullwidth comma U+FF0C) in Java application on
Mac OS using standard system Pinyin input method. A latin comma is inserted
instead.
Comments
Is the issue applicable to JDK 7?
28-07-2016
Is it possible to create an automated test? Maybe robot or jemmy can be used to emulate input without switching input method?
28-07-2016
Problem description:
'Latin comma' character is entered in text field component instead of the required 'fullwidth comma' character, when ',' character is pressed on the keyboard and Pinyin ��� Traditional or Simplified IM is enabled, because KeyEvent is generated instead of InputMethodEvent.
Fix:
It is necessary to generate InputMethodEvent for the characters from 'Halfwidth and Fullwidth Forms' Unicode block (U+FF00 - U+FFEF). So the method isCodePointInUnicodeBlockNeedingIMEvent() in AWTView.m should be updated.
17-06-2016
Steps to reproduce:
1) Run attached simple program, file name: JTextFieldTest.java
2) Make 'Pinyin - Simplified' an active input method
3) Press ',' key on the keyboard while focus is inside application's text
field.
Expected result: fullwidth comma (U+FF0C) character is inserted, just like
this happens in native applications (e.g. TextEdit). (This character takes
noticeably more horizontal space than latin comma)
Actual result: comma (U+002C) character is inserted.