xserver-multidpi/dix
Peter Hutterer d36adf52a2 dix: fix WarpPointer calls for devices with custom valuator ranges (#19297)
If the MD's lastSlave was a devices with custom axes ranges, then a
WarpPointer would position the cursor at the wrong location. A WarpPointer
request provides screen coordinates and these coordinates were scaled to the
device range before warping.

This patch consists of two parts:
1) in the WarpPointer handling, get the lastSlave and post the event through
   this device.
2) assume that WarpPointer coordinates are always in screen coordinates and
   scale them to device coordinates in GPE before continuing. Note that this
   breaks device-coordinate based XWarpDevicePointer calls (for which the spec
   isn't nailed down yet anyway) until a better solution is found.

X.Org Bug 19297 <http://bugs.freedesktop.org/show_bug.cgi?id=19297>

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-13 09:22:56 +10:00
..
atom.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
buildatoms XFree86 4.3.0.1 2003-11-14 16:49:22 +00:00
BuiltInAtoms R6.6 is the Xorg base-line 2003-11-14 15:54:54 +00:00
colormap.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
cursor.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
deprecated.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
devices.c dix: fix cast from pointer to integer 2009-01-11 08:54:10 +01:00
dispatch.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
dispatch.h Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
dixfonts.c Default to use standard bitmap fonts, with builtins as fallback 2009-01-07 19:37:03 -02:00
dixutils.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
enterleave.c dix: move focus handling into enterleave.c. 2009-01-08 11:45:22 +10:00
enterleave.h dix: move focus handling into enterleave.c. 2009-01-08 11:45:22 +10:00
events.c dix: fix WarpPointer calls for devices with custom valuator ranges (#19297) 2009-01-13 09:22:56 +10:00
extension.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
ffs.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
gc.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
getevents.c dix: fix WarpPointer calls for devices with custom valuator ranges (#19297) 2009-01-13 09:22:56 +10:00
globals.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
glyphcurs.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
grabs.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
initatoms.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
main.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
Makefile.am dix: move Enter-Leave related functions into new enterleave.c 2008-11-25 09:21:45 +10:00
pixmap.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
privates.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
property.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
protocol.txt Remove XEvIE 2008-11-04 16:01:07 +10:30
ptrveloc.c dix: ptraccel - Add GetAccelerationProfile() 2008-12-12 11:43:31 +10:00
registry.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
resource.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
selection.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
swaprep.c dix: ANSI cleanups 2009-01-11 08:54:10 +01:00
swapreq.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
tables.c Remove #define NEED_EVENTS and NEED_REPLIES 2008-12-12 11:43:32 +10:00
window.c dix: don't mix declarations and code 2009-01-11 08:54:10 +01:00
Xserver-dtrace.h.in Add DTrace probe points for X server <-> client communications 2006-11-03 12:54:43 -08:00
Xserver.d Add DTrace probe points for X server <-> client communications 2006-11-03 12:54:43 -08:00