xserver-multidpi/dix
Peter Hutterer 50d80c2552 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>
(cherry picked from commit d36adf52a2)
2009-01-30 17:10:40 -08:00
..
atom.c Small static cleanups on dix/ 2007-11-15 17:01:33 -05: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 Bug #10464: Set pixel value to 0 before FindColor() 2008-02-29 16:42:04 -05:00
cursor.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
deprecated.c dix: add new, combined resource lookup function. Move all dix lookup API 2007-04-04 16:00:15 -04:00
devices.c Let the DDX decide on the XkbRulesDefaults. 2009-01-11 16:08:35 -08:00
dispatch.c Purge device-based WindowAccess code. 2008-11-04 16:04:15 +10:30
dispatch.h Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
dixfonts.c Ansify declaration of FontToXError() 2008-10-26 11:55:50 +01:00
dixutils.c Change 'remap' to 'map' in saveset functions/macros 2008-09-22 12:43:30 -07:00
enterleave.c dix: move focus handling into enterleave.c. 2009-01-11 15:56:28 -08:00
enterleave.h dix: move focus handling into enterleave.c. 2009-01-11 15:56:28 -08:00
events.c dix: fix WarpPointer calls for devices with custom valuator ranges (#19297) 2009-01-30 17:10:40 -08:00
extension.c Move EXTENSION_BASE and EXTENSION_EVENT_BASE to misc.h. 2008-10-31 17:09:13 +10:30
ffs.c Don't use our version of ffs() if the system has one 2008-09-22 02:49:15 +02:00
gc.c Loader: Unexport a handful of consumerless symbols from dixsym. 2008-10-06 16:18:21 -04:00
getevents.c dix: fix WarpPointer calls for devices with custom valuator ranges (#19297) 2009-01-30 17:10:40 -08:00
globals.c Reinstate cursorScreenDevPriv 2008-10-07 10:36:12 -04:00
glyphcurs.c xalloc+bzero -> xcalloc 2008-10-06 14:19:30 -04:00
grabs.c Merge branch 'master' into mpx 2008-01-03 17:04:54 +10:30
initatoms.c Bug #10560: Code-Cleanup: function declarations () -> (void) 2007-04-09 14:33:15 -07:00
main.c XQuartz: mieq: Wait for the server to finish initializing before letting other threads mieqEnqueue 2009-01-30 16:44:49 -08:00
Makefile.am dix: move Enter-Leave related functions into new enterleave.c 2008-11-25 09:21:45 +10:00
pixmap.c On second thought, revert that, it'll make large pixmaps painfully slow. 2008-02-29 16:45:11 -05:00
privates.c Array-index based devPrivates implementation. 2008-09-12 19:11:53 -04:00
property.c Merge branch 'master' into dcdc_rework 2008-04-07 07:56:41 +09:30
protocol.txt Remove XEvIE 2008-11-04 16:01:07 +10:30
ptrveloc.c dix: memset DeviceVelocityPtr to zero. 2008-11-21 09:04:51 +10:00
registry.c Fix a leak in the code that parses the protocol names. 2008-06-24 22:00:55 -04:00
resource.c Loader: Unexport a handful of consumerless symbols from dixsym. 2008-10-06 16:18:21 -04:00
selection.c Merge branch 'master' into dcdc_rework 2008-04-07 07:56:41 +09:30
swaprep.c DIX: Remove usage of alloca 2007-11-05 14:34:43 +00:00
swapreq.c dix: remove 'register' keyword for all variables. 2007-03-08 17:50:25 +10:30
tables.c Loader: Unexport a handful of consumerless symbols from dixsym. 2008-10-06 16:18:21 -04:00
window.c dix: move focus handling into enterleave.c. 2009-01-11 15:56:28 -08: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