From: "Daniel P. Berrange" <berrange@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: Jeremy Katz <katzj@redhat.com>,
aliguori <aliguori@mail.utexas.edu>,
xen-devel <xen-devel@lists.xensource.com>,
sos22@srcf.ucam.org
Subject: Re: [PATCH] Paravirt framebuffer backend tools [2/5]
Date: Wed, 4 Oct 2006 15:20:03 +0100 [thread overview]
Message-ID: <20061004142003.GD474@redhat.com> (raw)
In-Reply-To: <87y7rwyy6q.fsf@pike.pond.sub.org>
On Wed, Oct 04, 2006 at 04:04:29PM +0200, Markus Armbruster wrote:
>
> The xenkbd protocol provides for three mouse buttons. From xenkbd.h:
>
> __u8 button; /* the button (0, 1, 2 is right, middle, left) */
>
> This is extensible as long as we handle unknown buttons gracefully. I
> do hate the weird encoding of buttons, though. Too hebrew for my
> taste.
>
> SDL provides for five buttons (SDL_BUTTON_LEFT, SDL_BUTTON_MIDDLE,
> SDL_BUTTON_RIGHT, SDL_BUTTON_WHEELUP, SDL_BUTTON_WHEELDOWN).
>
> LibVNCServer provides for 8 buttons.
>
> The kernel input layer provides for 8 mouse buttons (BTN_LEFT,
> BTN_RIGHT, BTN_MIDDLE, BTN_SIDE, BTN_EXTRA, BTN_FORWARD, BTN_BACK,
> BTN_TASK).
>
> How to best map buttons from VNC and SDL to input beyond the first
> three? If we can find a workable answer for that, providing for more
> buttons should be trivial.
Not sure why LibVNCServer bothers to go to the trouble of defining
named constants for mouse buttons, since interpretation is really
dependant on the mouse the user has plugged in & VNC protocol doesn't
care about named roles for buttons.
VNC rfb protocol allows for 8 buttons, and just documents the regular
X11 conventions[1]
"On a conventional mouse, buttons 1, 2 and 3 correspond to the
left, middle and right buttons on the mouse. On a wheel mouse,
each step of the wheel upwards is represented by a press and
release of button 4, and each step downwards is represented by
a press and release of button 5."
For VNC, it would seem we should/can just pass buttons 1-8 straight
though the whole stack with no need for funky mappings. The wire
protocol for VNC is just a U8 bitmask of buttons which are pressed.
Regards,
Dan.
[1] Page 23 http://realvnc.com/docs/rfbproto.pdf
--
|=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=|
|=- Perl modules: http://search.cpan.org/~danberr/ -=|
|=- Projects: http://freshmeat.net/~danielpb/ -=|
|=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|
next prev parent reply other threads:[~2006-10-04 14:20 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
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 [this message]
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=20061004142003.GD474@redhat.com \
--to=berrange@redhat.com \
--cc=aliguori@mail.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.