Re: [Qemu-devel] [PATCH 2/2] kbd: add brazil kbd keys to x11 evdev map
- From: "Daniel P. Berrange" <berrange redhat com>
- To: Markus Armbruster <armbru redhat com>
- Cc: Joao Luis Meloni Assirati <jlma nonada if usp br>,	Michael Tokarev <mjt tls msk ru>, qemu-devel nongnu org,	772422 bugs debian org, gtk-vnc-list gnome org
- Subject: Re: [Qemu-devel] [PATCH 2/2] kbd: add brazil kbd keys to x11 evdev map
- Date: Wed, 27 May 2015 12:35:49 +0100
On Wed, May 27, 2015 at 01:19:06PM +0200, Markus Armbruster wrote:
Gerd Hoffmann <kraxel redhat com> writes:
This patch adds the two extra brazilian keys to the evdev keymap for
X11.  This patch gets the two keys going with the gtk and sdl1 UIs.
With vnc (remote-viewer) only one of the two works correctly.
Probably a client-side issue.  Not investigated in detail though.
The SDL2 library complains it doesn't know these keys, so the SDL2
library must be fixed before we can update ui/sdl2-keymap.h
Signed-off-by: Gerd Hoffmann <kraxel redhat com>
---
 ui/x_keymap.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/ui/x_keymap.c b/ui/x_keymap.c
index b9b0944..4e899b4 100644
--- a/ui/x_keymap.c
+++ b/ui/x_keymap.c
@@ -94,7 +94,7 @@ static const uint8_t x_keycode_to_pc_keycode[115] = {
  */
 
 static const uint8_t evdev_keycode_to_pc_keycode[61] = {
-    0,         /*  97 EVDEV - RO   ("Internet" Keyboards) */
+    0x73,      /*  97 EVDEV - RO   ("Internet" Keyboards) */
     0,         /*  98 EVDEV - KATA (Katakana) */
     0,         /*  99 EVDEV - HIRA (Hiragana) */
     0x79,      /* 100 EVDEV - HENK (Henkan) */
@@ -126,7 +126,7 @@ static const uint8_t evdev_keycode_to_pc_keycode[61] = {
     0,         /* 126 EVDEV - I126 ("Internet" Keyboards) */
     0,         /* 127 EVDEV - PAUS */
     0,         /* 128 EVDEV - ???? */
-    0,         /* 129 EVDEV - I129 ("Internet" Keyboards) */
+    0xf0,      /* 129 EVDEV - I129 ("Internet" Keyboards) */
     0xf1,      /* 130 EVDEV - HNGL (Korean Hangul Latin toggle) */
     0xf2,      /* 131 EVDEV - HJCV (Korean Hangul Hanja toggle) */
     0x7d,      /* 132 AE13 (Yen)*/
The two patches together associate
    name        number      evdev
    ro          0x73        97
    kp_comma    0xf0        129
If I understand things correctly, we can freely choose number (we choose
it to match PS/2 scancodes, however), but evdev is externally defined.
Correct?
My /usr/share/X11/xkb/keycodes/evdev has
      // Keys that are generated on Japanese keyboards
      <AB11> = 97;    // backslash/underscore
      //<RO>   =  97; // Romaji
and
      // Extended keys that may be generated on "Internet" keyboards.
      // evdev has standardize names for these.
      <I129> = 129;   // #define KEY_KPCOMMA             121
I guess this is where you got the name 'ro'.  Okay.
I'm pretty ignorant about evdev, so please excuse if my questions are
stupid:
1. Can you explain why you picked <RO> over <AB11>?
/usr/include/linux/input.h calls it KEY_RO - not sure why
X11 would use AB11 for that keycode instead, but I figure
it is better for use to use the Linux names here.
2. Should the comment in your second hunk be changed from
        EVDEV - I129 ("Internet" Keyboards)
   to something mentioning KPCOMMA?
Yeah, I think it would make sense.
Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|
[
Date Prev][
Date Next]   [
Thread Prev][
Thread Next]   
[
Thread Index]
[
Date Index]
[
Author Index]