qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] AltGr and dead keys with VNC
@ 2008-11-03  9:23 Marcel Zumstein
  2008-11-27 16:37 ` Guido Günther
  0 siblings, 1 reply; 2+ messages in thread
From: Marcel Zumstein @ 2008-11-03  9:23 UTC (permalink / raw)
  To: qemu-devel

[-- Attachment #1: Type: text/plain, Size: 2381 bytes --]

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.

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},

[-- Attachment #2: Type: text/html, Size: 2858 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Qemu-devel] AltGr and dead keys with VNC
  2008-11-03  9:23 [Qemu-devel] AltGr and dead keys with VNC Marcel Zumstein
@ 2008-11-27 16:37 ` Guido Günther
  0 siblings, 0 replies; 2+ messages in thread
From: Guido Günther @ 2008-11-27 16:37 UTC (permalink / raw)
  To: qemu-devel

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},

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-11-27 17:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-11-03  9:23 [Qemu-devel] AltGr and dead keys with VNC Marcel Zumstein
2008-11-27 16:37 ` Guido Günther

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).