Files
xserver/dix
Peter Hutterer 5cc2c96f82 dix: pre-scale x by the screen:device:resolution ratio
commit 61a99aff9d
    dix: pre-scale relative events from abs devices to desktop ratio (#31636)

added pre-scaling of relative coordinates coming from absolute devices to
undo uneven scaling based on the screen dimensions.

Devices have their own device width/height ratio as well (in a specific
resolution) and this must be applied for relative devices as well to avoid
scaling of the relative events into the device's ratio.

e.g. a Wacom Intuos4 6x9 is in 16:10 format with equal horiz/vert
resolution (dpi). A movement by 1000/1000 coordinates is a perfect diagonal
on the tablet and must be reflected as such on the screen.

However, we map the relative device-coordinate events to absolute screen
coordinates based on the axis ranges. This results in an effective scaling
of 1000/(1000 * 1.6) and thus an uneven x/y axis movement - the y
axis is always faster.

So we need to pre-scale not only by the desktop dimenstions but also by the
device width/height ratio _and_ the resolution ratio.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-05-23 15:35:05 +10:00
..
2012-03-21 13:54:42 -07:00
2003-11-14 16:49:22 +00:00
2003-11-14 15:54:54 +00:00
2012-12-05 18:09:48 -06:00
2012-03-21 13:54:42 -07:00
2012-03-21 13:54:42 -07:00
2012-11-19 12:12:23 +10:00
2012-03-21 13:54:42 -07:00
2012-05-01 11:36:30 +10:00
2013-05-08 09:27:30 +10:00
2009-08-28 23:29:05 -04:00
2012-03-21 13:54:42 -07:00
2012-03-22 11:33:42 +10:00