From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42545) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YxsR5-0002d2-Id for qemu-devel@nongnu.org; Thu, 28 May 2015 03:41:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YxsR1-0006Ao-JW for qemu-devel@nongnu.org; Thu, 28 May 2015 03:41:03 -0400 Received: from mx1.redhat.com ([209.132.183.28]:47923) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YxsR1-00069n-E4 for qemu-devel@nongnu.org; Thu, 28 May 2015 03:40:59 -0400 From: Gerd Hoffmann Date: Thu, 28 May 2015 09:40:44 +0200 Message-Id: <1432798845-10118-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [PATCH v2 1/2] kbd: add brazil kbd keys to qemu List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Joao Luis Meloni Assirati , Michael Tokarev , Markus Armbruster , 772422@bugs.debian.org, Gerd Hoffmann , gtk-vnc-list@gnome.org 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. Signed-off-by: Gerd Hoffmann --- qapi-schema.json | 4 +++- ui/input-keymap.c | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/qapi-schema.json b/qapi-schema.json index f97ffa1..25df463 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -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 diff --git a/ui/input-keymap.c b/ui/input-keymap.c index 5d29935..7635cb0 100644 --- a/ui/input-keymap.c +++ b/ui/input-keymap.c @@ -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, }; -- 1.8.3.1