-
Bug
-
Resolution: Fixed
-
P3
-
beta2, 6
-
b03
-
generic, x86
-
generic, linux
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2196962 | 7 | Yuri Nesterenko | P3 | Closed | Cannot Reproduce |
Unable to type certain characters into a JPasswordField
Affected J2SE version:
======================
J2SE 6.0 from final to J2SE 6.0 Update 12
Affected Operating Systems:
===========================
Linux (all tested Distributions incl. RedHat and SuSE Linux)
Solaris 8, Solaris 9, Solaris 10
Error Description:
==================
Characters using the "mode shift" modifier can not be typed into
JTextComponents that are not input method enabled.
Typing e.g. "@" (\u0x40, At-sign) or "?" (\u0x20ac, Euro sign) on a
german keyboard where these characters are accessed using Alt-GR-q (@)
and Alt-GR-e into a JPasswordField yields "q" or "e" instead of "@"
and "?".
This behaviour can be reproduced with ordinary JTextFields after calling
enableInputMethods(false) on the JTextField.
This behaviour is a regression from J2SE 5 where the above scenario
worked fine.
Reproduction:
=============
A test case is included in KeyboardTest.jar.
java -jar KeyboardTest.jar
Type into password field on top of the window. In the field below the
type text is mirrored (we use the same document to just display the
text).
In the text are below we output the received key events.
Example Log (typing "@@@"):
===========================
============================================================
Operating system: Linux, 2.6.18.8-0.13-default
Java VM version : 1.6.0_12
System locale : de_DE
Default encoding: UTF8
============================================================
Event type : KEY_PRESSED
Event key code: 65406
Event key text: Alt Gr
Event key char: "?" - 0xffff
============================================================
Event type : KEY_PRESSED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Event type : KEY_TYPED
Event key code: 0
Event key text: Unknown keyCode: 0x0
Event key char: "q" - 0x71
============================================================
Event type : KEY_RELEASED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Event type : KEY_PRESSED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Event type : KEY_TYPED
Event key code: 0
Event key text: Unknown keyCode: 0x0
Event key char: "q" - 0x71
============================================================
Event type : KEY_RELEASED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Hi all,
Any updates on this one? The customer is expecting a fix, and I'd appreciate any information that we could share with them.
Thanks,
MS
Affected J2SE version:
======================
J2SE 6.0 from final to J2SE 6.0 Update 12
Affected Operating Systems:
===========================
Linux (all tested Distributions incl. RedHat and SuSE Linux)
Solaris 8, Solaris 9, Solaris 10
Error Description:
==================
Characters using the "mode shift" modifier can not be typed into
JTextComponents that are not input method enabled.
Typing e.g. "@" (\u0x40, At-sign) or "?" (\u0x20ac, Euro sign) on a
german keyboard where these characters are accessed using Alt-GR-q (@)
and Alt-GR-e into a JPasswordField yields "q" or "e" instead of "@"
and "?".
This behaviour can be reproduced with ordinary JTextFields after calling
enableInputMethods(false) on the JTextField.
This behaviour is a regression from J2SE 5 where the above scenario
worked fine.
Reproduction:
=============
A test case is included in KeyboardTest.jar.
java -jar KeyboardTest.jar
Type into password field on top of the window. In the field below the
type text is mirrored (we use the same document to just display the
text).
In the text are below we output the received key events.
Example Log (typing "@@@"):
===========================
============================================================
Operating system: Linux, 2.6.18.8-0.13-default
Java VM version : 1.6.0_12
System locale : de_DE
Default encoding: UTF8
============================================================
Event type : KEY_PRESSED
Event key code: 65406
Event key text: Alt Gr
Event key char: "?" - 0xffff
============================================================
Event type : KEY_PRESSED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Event type : KEY_TYPED
Event key code: 0
Event key text: Unknown keyCode: 0x0
Event key char: "q" - 0x71
============================================================
Event type : KEY_RELEASED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Event type : KEY_PRESSED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Event type : KEY_TYPED
Event key code: 0
Event key text: Unknown keyCode: 0x0
Event key char: "q" - 0x71
============================================================
Event type : KEY_RELEASED
Event key code: 81
Event key text: Q
Event key char: "q" - 0x71
============================================================
Hi all,
Any updates on this one? The customer is expecting a fix, and I'd appreciate any information that we could share with them.
Thanks,
MS
- backported by
-
JDK-2196962 JPasswordField broken on JDK 6
-
- Closed
-
- duplicates
-
JDK-6703772 Regression: JPasswordField doesn't always recognize AltGraph Keystrokes in Java SE 6
-
- Closed
-
- relates to
-
JDK-6812285 PIT : WARNING: Exception on Toolkit thread java.lang.UnsatisfiedLinkError: sun.awt.X11.XlibW
-
- Closed
-
-
JDK-6699860 JPasswordField not accepting "alt gr"-characters
-
- Closed
-
-
JDK-6680988 KeyEvent is still missing VK values for many keyboards
-
- Closed
-