Patch for xserver-xorg-input-synaptics to add a variable Orientation

Peter Hutterer peter.hutterer at who-t.net
Tue Dec 1 20:16:15 PST 2009


On Tue, Dec 01, 2009 at 08:56:09AM +0100, Eric Piel wrote:
> Op 30-11-09 21:05, Qfeng Chen schreef:
> >I am sorry I can't try the patch. Because I have different version
> >xorg-server in my system, and I do not understand your patch.
> Hi,
> The patch's goal is very similar to your patch: provide additional
> properties to the input devices to select the rotation.
> 
> >
> >I am not sure whether it is enough to just exchange the map between
> >the axis of the controller and the screen.
> >As I know, the map between controller and screen is not so simple,
> >direction should also be considered, and different device might have
> >different definition.
> >
> >I still think it is a good idea to make the driver have such a
> >function to set the orientation, because it is not always the case we
> >need to rotate the touchpad when the screen is rotated.
> >for example we just rotate the screen instead of the notepad. In this
> >case we do not need to rotate touchpad.
> 
> Yes, I completely agree. It's not possible to link directly the
> output rotation with the pointer device rotation, because there is
> no absolute rule for this. That's the job of a "userspace"
> application. With the input properties provided by the patch, to
> rotate "left" a specific input you have to:
>  * swap the axes: "Axis Mapping" = "1 0"
>  * inverse the Y axis: "Axis Inversion" = "0 1"
> 
> That said, now that I look closely, the latest patches associated to
> the bug report do not have the "Axis Inversion" property... so it's
> not yet gonna fly!

I've been playing around with this a few weeks back but had to put it aside
for time reasons.

short version - it is better to expose button mapping, axis mapping and
axis inversion as a protocol request than a property. Properties only allow
limited feedback and debugging failures can be quite tricky. requests are
well defined and if something goes wrong a client can back out and try
again.

i've got some bits and pieces here but they need finishing off and
debugging.

Cheers,
  Peter


More information about the xorg-devel mailing list