Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6454041
Votes 0
Synopsis decimal separator munches the character standing at the right (sk keyboard)
Category java:classes_awt
Reported Against
Release Fixed 7(b36)
State 10-Fix Delivered, bug
Priority: 4-Low
Related Bugs 6578044
Submit Date 28-JUL-2006
Description
FULL PRODUCT VERSION :
Java(TM) SE Runtime Environment (build 1.6.0-rc-b93)
Java HotSpot(TM) Client VM (build 1.6.0-rc-b93, mixed mode)


ADDITIONAL OS VERSION INFORMATION :
Linux bartkoz 2.6.13-15.10-default #1 Fri May 12 16:27:12 UTC 2006 i686 i686 i386 GNU/Linux


EXTRA RELEVANT SYSTEM CONFIGURATION :
sk, hu, cz keyboard layouts

A DESCRIPTION OF THE PROBLEM :
The decimal separator of the numerical keypad does not work as expected. When entering asdfghjkl in a swing app (tested on jEdit, ArgoUML and others) and then typing 0,1 with the numerical keypad gives asdfg0,1jkl instead of asdfg0,1hjkl. Experienced with sk, hu, cz keyboard layouts (but not pl, for example)


STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1. switch the keyboard layout to sk:
  setxkbmap -model pc105 -layout sk
2. open a swing app, e.g. jEdit
3. type asdfghjkl
4. move the cursor to 'g'
5. type 0,1 with the numerical keyboard

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
asdfg0,1hjkl
ACTUAL -
asdfg0,1jkl

REPRODUCIBILITY :
This bug can be reproduced always.
Posted Date : 2006-07-28 12:06:43.0
Work Around
use an additional layout, e.g. "us,sk"
Evaluation
This bug is reproducible if sk (or hu, cz) is the only layout set in the system. If you like me have several layouts to switch between, it is not reproducible. 

Now, on this condition a keysym array returned by the system contains not the "NumPad ." which is a convention for the numeric separator but just a comma keysym (0x2c) which is not a numpad key. Once it is not a numpad key, we must use a primary layer keysym to produce a java keycode, which is incidentally 0x7f, delete. At the same time keychar is comma.

Similar behaviour detected in Solaris 10, i586 based on Xorg.
Posted Date : 2006-08-01 13:06:33.0

As of now, we are deciding if it is a keypad event just by trying a single keysym in a precisely chosen place in the keysym array. However, certain XKB symbol tables map to this place not a keypad keysym but a regular one (e.g in cz: not a KP_Decimal but just comma). Let's try also a primary-level keysym in the array: if IsKeypadKeysym checks for either of it, declare a given event a keypad event.
Posted Date : 2008-07-28 12:53:55.0
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang