JDK-4507098 : Some keys do not work under Linux with 1.4beta2
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 1.4.0
  • Priority: P4
  • Status: Closed
  • Resolution: Duplicate
  • OS: linux
  • CPU: x86
  • Submitted: 2001-09-26
  • Updated: 2001-10-15
  • Resolved: 2001-10-15
Related Reports
Duplicate :  
Description

Name: gm110360			Date: 09/25/2001


java version "1.4.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta2-b77)
Java HotSpot(TM) Client VM (build 1.4.0-beta2-b77, mixed mode)


Running Linux with a French Canadian keyboard, I cannot type the following
characters : [, ], {, }. All of them are generated through the "AltCar" key.
Strangely enough, the "AltCar" key works with other international keys!

I also get the infamous:

Warning: Cannot convert string "MetaCtrl<Key>Insert" to type VirtualBinding

which I suppose is related to my problem.

Please, this makes Java totally unusable!!!
(Review ID: 132513) 
======================================================================
More information from user :-

I guess what you are looking for, really, are the step necessary to 
reproduce the problem?

Under Linux, switch to French Canadian keyboard. This can be done in any 
number of ways. Using the Xmodmap I provide a link to (type "XmodMap 
..." and running your app "java -jar Notepad.jar") will do the trick.

Now, when typing "Right Alt" followed by "[" (on an American keyboard), 
you should get "[". Currently, you get nothing under a Swing app.


Also, if you type "[", nothing should display. If you type "[" followed 
by "spacebar", you should get "^". If you type "'" followed by 
"spacebar", you should get "`".

To check you have the keyboard right, just type "[", followed by "e", 
you should get "��". This last step *should* work (it works here). You 
should also be able to type "'" followed by "e" to get "��". That's 
assuming you have an american keyboard and you ran the xmod file I'm 
proposing.

Now, you can try different keyboards. I tried "Canadian Multilingual" 
and get equally evil results. It works 99% of the time, but some keys 
just won't work as expected (again, I cannot generate [,]).

Desired result : AWT and Swing components should act the same as far as 
entering text with the keyboard is concerned. You don't want any 
characters not to be available (especially not a thing like "{").

Basically, dead keys are not quite right! That's a very important issue! 
Especially since keyboard support is really flawless under Linux for 
everything (including IBM JVMs)... I'm also almost certain this leads to 
problem for other people using other keyboards. I just didn't check all 
of them, but we have at least one user saying that it doesn't work right 
under a Swiss keyboard. It is likely that most intern. keyboards don't 
work right.

I suspect a flawed implementation somewhere at a basic level. That's 
probably not a "French Canadian"-specific bug.

================================================
###@###.### 2001-10-15

Comments
WORK AROUND Name: gm110360 Date: 09/25/2001 Go back to JDK1.3. ======================================================================
11-06-2004

EVALUATION Could you please provide the information of your Linux distribution? I tried on my RedHat 6.1 and could not reproduce the problem. Since don't have French Canadian layout keyboard, I used US layout keyboard with modified XF86Config (XkbLayout = "fr_CH"). ###@###.### 2001-09-28 Possibly a duplicate problem of 4379138. Closing it as a dup. ###@###.### 2001-10-15
28-09-2001