Commit b771f470 authored by Gerd Hoffmann's avatar Gerd Hoffmann
Browse files

kbd: add brazil kbd keys to qemu



The brazilian computer keyboard layout has two extra keys (compared to
the usual 105-key intl ps/2 keyboard).  This patch makes these two keys
known to qemu.

For historic reasons qemu has two ways to specify a key:  A QKeyCode
(name-based) or a number (ps/2 scancode based).  Therefore we have to
update multiple places to make new keys known to qemu:

  (1) The QKeyCode definition in qapi-schema.json
  (2) The QKeyCode <-> number mapping table in ui/input-keymap.c

This patch does just that.  With this patch applied you can send those
two keys to the guest using the send-key monitor command.

Cc: qemu-stable@nongnu.org
Signed-off-by: default avatarGerd Hoffmann <kraxel@redhat.com>
Reviewed-by: default avatarMarkus Armbruster <armbru@redhat.com>
Reviewed-by: default avatarDaniel P. Berrange <berrange@redhat.com>
Reviewed-by: default avatarMichael Tokarev <mjt@tls.msk.ru>
parent ce0274f7
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -2784,6 +2784,7 @@
# Since: 1.3.0
#
# 'unmapped' and 'pause' since 2.0
# 'ro' and 'kp_comma' since 2.4
##
{ 'enum': 'QKeyCode',
  'data': [ 'unmapped',
@@ -2801,7 +2802,8 @@
            'kp_9', 'less', 'f11', 'f12', 'print', 'home', 'pgup', 'pgdn', 'end',
            'left', 'up', 'down', 'right', 'insert', 'delete', 'stop', 'again',
            'props', 'undo', 'front', 'copy', 'open', 'paste', 'find', 'cut',
             'lf', 'help', 'meta_l', 'meta_r', 'compose', 'pause' ] }
            'lf', 'help', 'meta_l', 'meta_r', 'compose', 'pause', 'ro',
            'kp_comma' ] }

##
# @KeyValue
+4 −0
Original line number Diff line number Diff line
@@ -128,6 +128,10 @@ static const int qcode_to_number[] = {

    [Q_KEY_CODE_INSERT] = 0xd2,
    [Q_KEY_CODE_DELETE] = 0xd3,

    [Q_KEY_CODE_RO] = 0x73,
    [Q_KEY_CODE_KP_COMMA] = 0x7e,

    [Q_KEY_CODE_MAX] = 0,
};