Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-4068241

RFE: java.awt.event.KeyEvent doesn't have VK values for Asian/European keyboards

XMLWordPrintable

    • 1.2beta4
    • generic, sparc
    • generic, solaris_2.6
    • Not verified

      [naoyuki 7/30/97]
      JDK1.1.*'s java.awt.event.KeyEvent does not have
      VK_COLON(0xBA) for ':', VK_AT(0xC0) for '@', and VK_CIRCUMFLEX(0xDE) for '^'.

      These keys are inputed with Japanese PC106 keyboard or
      Japanese Sun Keyboard without modifier keys.
      So VK_ value for these keys are nessesaly.

      JDK1.1.3 implementations are
       Win32: store correct values (Windows VK value)
      into keyCode variable for these key's KEY_PRESS/KEY_RELEASE event
       Solaris: store 0 (VK_UNDEFINED) into keyCode variable for
      these key's KEY_PRESS/KEY_RELEASE event.

      So the first bug is java.awt.event.KeyEvent has no constant variable for
      ':', '@' nor '^'.
      The second bug is Solaris/AWT implementation stores VK_UNDEFINED value into
      KEY_PRESS/KEY_RELEASE KeyEvent's keyCode for ':', '@' and '&'.

      I'm not sure about other countries keyboard, but basically any key has
      possibility to be inputed without modifier keys considering l10n keyboard, so
      every key code which appear in popular keyboard should be pre-defined
      in KeyEvent class, I believe.

      This bug report states only about Japanese keyboard.
      ------------------------------------------------------------------------
      [naoyuki 8/13/97]
      Here is the input from Ginger Ward about European keyboard.

      ----- Begin Included Message -----

      Date: Thu, 7 Aug 97 10:31:49 JST
      From: ###@###.### (Ginger Ward (Ferguson))
      Subject: [LUNA-IM:121] Virtual-Key Keysym definitions missing
      To: ###@###.### (luna-im)
      Cc: ###@###.###

      I've been noticing that as I write more keysym-
      to-Virtual-Key tables, for use in my localized
      keyboard classes, I find that I need additional
      Virtual Key keysyms that aren't in the
      java.awt.event.KeyEvent class. This is annoying
      in the sense that it seems that for each keyboard
      I write, I find more VK keysyms that aren't present.

      I'm concerned, as I would like to be able to add
      new keyboard classes rather seemlessly, I mean without
      having to add stuff to the base JDK to support them.

      Here I list the additional Virtual Key keysyms needed for
      the scancode-VK keysym (few) tables I've done so far.
      These are needed to support the following keyboards:

        danish, french, italian, spanish, uk
        german, swedish

      KeyEvent.VK_ampersand
      KeyEvent.VK_apostrophe
      KeyEvent.VK_asciicircum
      KeyEvent.VK_asterisk
      KeyEvent.VK_backslash
      KeyEvent.VK_colon
      KeyEvent.VK_diaeresis
      KeyEvent.VK_dollar
      KeyEvent.VK_exclam
      KeyEvent.VK_exclamdown
      KeyEvent.VK_greater
      KeyEvent.VK_less
      KeyEvent.VK_numbersign
      KeyEvent.VK_parenleft
      KeyEvent.VK_parenright
      KeyEvent.VK_plus
      KeyEvent.VK_quotedbl
      KeyEvent.VK_semicolon
      KeyEvent.VK_underscore

      (I used the Xlib keysym names as advised by Tom Ball.)

      Perhaps there's a better way for me to do this. It seems
      that as I add keyboards I'll keep asking you all to add
      VK keysyms. There must be a better way. If anyone has
      any good ideas, please email.

      However, for now, can these please be added to the
      java.awt.event.KeyEvent class?

      =Ginger

      ----- End Included Message -----

      [norbert@eng 1998-02-23]

      IBM and other licensees have also requested additional VK constants to fully support localized keyboards, for example:
            hiragana
            katakana
            alpha-numeric
            Roman input
            all candidates
            previous candidate
            Kanji code input
            half size
            full size

      norbert.lindenberg@Eng 1998-02-23

            nlindenbsunw Norbert Lindenberg (Inactive)
            nishimur Naoyuki Ishimura (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: