From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1L5kT6-0005LM-Bw for qemu-devel@nongnu.org; Thu, 27 Nov 2008 12:15:56 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1L5kT5-0005Kx-QC for qemu-devel@nongnu.org; Thu, 27 Nov 2008 12:15:55 -0500 Received: from [199.232.76.173] (port=37021 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L5kT5-0005Ks-LE for qemu-devel@nongnu.org; Thu, 27 Nov 2008 12:15:55 -0500 Received: from static-87-79-238-240.netcologne.de ([87.79.238.240]:36175 helo=honk.sigxcpu.org) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1L5kT5-00076T-73 for qemu-devel@nongnu.org; Thu, 27 Nov 2008 12:15:55 -0500 Received: from localhost (localhost [127.0.0.1]) by honk.sigxcpu.org (Postfix) with ESMTP id 4BBE99C003 for ; Thu, 27 Nov 2008 17:38:17 +0100 (CET) Received: from honk.sigxcpu.org ([127.0.0.1]) by localhost (honk.sigxcpu.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZgZlfgQIsQM2 for ; Thu, 27 Nov 2008 17:38:16 +0100 (CET) Received: from bogon.ms20.nix (xdsl-84-44-179-191.netcologne.de [84.44.179.191]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by honk.sigxcpu.org (Postfix) with ESMTPSA id 299F59C002 for ; Thu, 27 Nov 2008 17:38:16 +0100 (CET) Date: Thu, 27 Nov 2008 17:37:35 +0100 From: Guido =?iso-8859-1?Q?G=FCnther?= Subject: Re: [Qemu-devel] AltGr and dead keys with VNC Message-ID: <20081127163735.GA13578@bogon.ms20.nix> References: <4D3235377F5E4788A3BBB4475C86F72A@winxp> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4D3235377F5E4788A3BBB4475C86F72A@winxp> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org On Mon, Nov 03, 2008 at 10:23:45AM +0100, Marcel Zumstein wrote: > In VNC mode, my AltGr key (mapped to ISO_Level3_Shift) and the dead keys aren't supported. This patch adds XK_ISO_Level3_Shift (keysym 0xfe03) to the keymap. Furthermore, it adds support for the dead keys, which were for some reason present in the keymaps, but not in vnc_keysym.h. This is relevant for VNC viewers that pass dead keys on to the guest system (e.g. tightvnc does) and don't compose the accented letters themselves. This fixes AltGr with GtkVNC here too. Is there any special reason for not mapping ISO_Level3_Shift? Cheers, -- Guido > > diff -ur qemu-0.9.1/keymaps/modifiers qemu-0.9.1-keypatch/keymaps/modifiers > --- qemu-0.9.1/keymaps/modifiers 2008-10-12 13:50:11.000000000 +0200 > +++ qemu-0.9.1-keypatch/keymaps/modifiers 2008-10-31 15:30:07.000000000 +0100 > @@ -3,6 +3,7 @@ > > Alt_R 0xb8 > Mode_switch 0xb8 > +ISO_Level3_Shift 0xb8 > Alt_L 0x38 > > Control_R 0x9d > diff -ur qemu-0.9.1/vnc_keysym.h qemu-0.9.1-keypatch/vnc_keysym.h > --- qemu-0.9.1/vnc_keysym.h 2008-10-29 09:18:52.000000000 +0100 > +++ qemu-0.9.1-keypatch/vnc_keysym.h 2008-10-31 15:30:07.000000000 +0100 > @@ -204,6 +204,7 @@ > {"EuroSign", 0x20ac}, /* XK_EuroSign */ > > /* modifiers */ > +{"ISO_Level3_Shift", 0xfe03}, /* XK_ISO_Level3_Shift */ > {"Control_L", 0xffe3}, /* XK_Control_L */ > {"Control_R", 0xffe4}, /* XK_Control_R */ > {"Alt_L", 0xffe9}, /* XK_Alt_L */ > > @@ -286,6 +287,27 @@ > {"Pause", 0xff13}, /* XK_Pause */ > {"Escape", 0xff1b}, /* XK_Escape */ > > +/* dead keys */ > +{"dead_grave", 0xfe50}, /* XK_dead_grave */ > +{"dead_acute", 0xfe51}, /* XK_dead_acute */ > +{"dead_circumflex", 0xfe52}, /* XK_dead_circumflex */ > +{"dead_tilde", 0xfe53}, /* XK_dead_tilde */ > +{"dead_macron", 0xfe54}, /* XK_dead_macron */ > +{"dead_breve", 0xfe55}, /* XK_dead_breve */ > +{"dead_abovedot", 0xfe56}, /* XK_dead_abovedot */ > +{"dead_diaeresis", 0xfe57}, /* XK_dead_diaeresis */ > +{"dead_abovering", 0xfe58}, /* XK_dead_abovering */ > +{"dead_doubleacute", 0xfe59}, /* XK_dead_doubleacute */ > +{"dead_caron", 0xfe5a}, /* XK_dead_caron */ > +{"dead_cedilla", 0xfe5b}, /* XK_dead_cedilla */ > +{"dead_ogonek", 0xfe5c}, /* XK_dead_ogonek */ > +{"dead_iota", 0xfe5d}, /* XK_dead_iota */ > +{"dead_voiced_sound", 0xfe5e}, /* XK_dead_voiced_sound */ > +{"dead_semivoiced_sound", 0xfe5f}, /* XK_dead_semivoiced_sound */ > +{"dead_belowdot", 0xfe60}, /* XK_dead_belowdot */ > +{"dead_hook", 0xfe61}, /* XK_dead_hook */ > +{"dead_horn", 0xfe62}, /* XK_dead_horn */ > + > /* localized keys */ > {"BackApostrophe", 0xff21}, > {"Muhenkan", 0xff22},