From: Steven Smith <sos22-xen@srcf.ucam.org>
To: Anthony Liguori <aliguori@cs.utexas.edu>
Cc: xen-devel <xen-devel@lists.xensource.com>,
Laurent Vivier <Laurent.Vivier@bull.net>,
Markus Armbruster <armbru@redhat.com>,
sos22@srcf.ucam.org, Jeremy Katz <katzj@redhat.com>
Subject: Re: [PATCH] Paravirt framebuffer backend tools [2/5]
Date: Fri, 8 Sep 2006 15:12:48 +0100 [thread overview]
Message-ID: <20060908141248.GA6845@cam.ac.uk> (raw)
In-Reply-To: <45016F8E.1030300@cs.utexas.edu>
[-- Attachment #1.1: Type: text/plain, Size: 2009 bytes --]
> >First: I now agree with you that scancodes are a better choice than
> >keysyms, and that I was wrong initially.
> The problem with scancodes is that you cannot always get scancodes from
> the viewer. You can get scancodes from SDL but you can only get keysyms
> from VNC. We would have to map VNC keysyms (which are just Xk keysyms)
> to scancodes?
Yeah. That's going to be a problem, and that's why I initially wanted
to avoid this approach, but I can't see any sane way around it. The
mapping table you've got there at the moment is a pretty reasonable
first step, even if it is limited to a US keyboard layout.
We could potentially do a bit better if we go with the pushing keymaps
across xenbus thing, in that we can just send over a keymap which can
generate every possible keysym using compose keys and so forth, but
it'd be pretty distasteful.
> I'm a bit surprised here. If we generate a KEY_Q event in Linux that
> may show up as a KEY_A key? There are keysyms for all the extended keys
> I thought.
I'm glad I'm not the only one who finds this confusing. :)
The KEY_ constants in linux/input.h are a lot closer to scancodes than
to traditional X-style keysyms. This becomes obvious once you notice
that there's no KEY_COLON, and there's only one KEY_A rather than a
KEY_A and a KEY_a. While there is some small amount of normalisation,
so that you can mostly use the same keymaps for (say) AT and USB
keyboards, input core key events are best thought of as scan codes.
Calling them KEY_A etc. is more than a little bit deceptive, since
they actually refer more to places on the keyboard than actual
characters.
The actual key mapping is implemented in drivers/char/keyboard.c (look
for key_maps), and we're going to have to go through that whether we
want to or not.
Of course, I completely failed to understand what was going on here a
couple of days ago, so there's a decent chance I've failed to
understand this time as well.
Steven.
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
next prev parent reply other threads:[~2006-09-08 14:12 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-02 19:58 [PATCH] Paravirt framebuffer backend tools [2/5] Jeremy Katz
2006-09-04 9:01 ` Steven Smith
2006-09-04 12:55 ` Laurent Vivier
2006-09-06 9:15 ` Steven Smith
2006-09-06 11:41 ` Laurent Vivier
2006-09-06 17:10 ` Steven Smith
2006-09-06 17:50 ` Gerd Hoffmann
2006-09-07 7:32 ` Laurent Vivier
2006-09-07 7:50 ` Steven Smith
2006-09-07 7:31 ` Laurent Vivier
2006-09-07 8:38 ` Steven Smith
2006-09-07 9:31 ` Laurent Vivier
2006-09-07 9:55 ` Steven Smith
2006-09-07 12:03 ` Laurent Vivier
2006-09-08 13:26 ` Anthony Liguori
2006-09-08 14:00 ` Laurent Vivier
2006-09-08 14:12 ` Steven Smith [this message]
2006-09-08 14:23 ` Anthony Liguori
2006-10-07 16:48 ` Markus Armbruster
2006-10-10 16:53 ` Stephen C. Tweedie
2006-10-10 17:46 ` Anthony Liguori
2006-10-10 17:46 ` Anthony Liguori
2006-10-11 13:49 ` Markus Armbruster
2006-10-11 15:18 ` Gerd Hoffmann
2006-10-11 15:21 ` Laurent Vivier
2006-10-10 18:48 ` Steven Smith
2006-09-10 10:40 ` Steven Smith
2006-09-10 13:05 ` Anthony Liguori
2006-09-05 16:11 ` Jeremy Katz
2006-09-05 16:57 ` Anthony Liguori
2006-09-06 9:14 ` Steven Smith
2006-09-06 9:13 ` Steven Smith
2006-09-30 8:51 ` Markus Armbruster
2006-10-02 9:01 ` Steven Smith
2006-10-04 14:04 ` Markus Armbruster
2006-10-04 14:20 ` Daniel P. Berrange
2006-10-04 14:57 ` Anthony Liguori
2006-10-05 18:41 ` Steven Smith
2006-10-05 18:33 ` Steven Smith
2006-10-06 14:10 ` Markus Armbruster
2006-10-07 9:42 ` Steven Smith
2006-09-12 18:55 ` Daniel P. Berrange
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20060908141248.GA6845@cam.ac.uk \
--to=sos22-xen@srcf.ucam.org \
--cc=Laurent.Vivier@bull.net \
--cc=aliguori@cs.utexas.edu \
--cc=armbru@redhat.com \
--cc=katzj@redhat.com \
--cc=sos22@srcf.ucam.org \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.