xserver/dix
Peter Hutterer 02d77caa36 dix: only transform valuators when we need them.
Unconditionally drop the valuators back into the mask when they were there
in the first place. Otherwise, sending identical coordinates from the driver
on a translated device causes the valuator mask to be alternatively
overwritten with the translated value or left as-is. This leads to the
device jumping around between the translated and the original position.

The same could be achieved with a valuator_mask_unset() combination.

Testcase:
xsetwacom set "device name" MapToOutput VGA1
Then press a button on the device, cursor jumps between the two positions.

Introduced in 31737fff08

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
2011-08-11 21:30:23 -07:00
..
.gitignore .gitignore: use common defaults with custom section #24239 2009-11-11 21:40:20 -08:00
atom.c Misc coding style cleanup 2010-05-13 06:16:48 +07: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 dix: fix memory leak in AllocShared 2011-04-04 17:27:12 +03:00
cursor.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
deprecated.c dix: Fix logic for displaying deprecation warning only once. 2010-12-07 18:42:45 +01:00
devices.c input: Only release SD buttons for explicit floating/reattachment (#36146) 2011-06-20 15:33:16 +10:00
dispatch.c Sun's copyrights now belong to Oracle 2010-12-07 11:10:35 -08:00
dispatch.h xserver: delete pervasively use of DISPATCH_PROC 2010-09-28 16:45:05 +03:00
dixfonts.c dix: fix memory leak in SetDefaultFontPath 2011-04-04 17:27:12 +03:00
dixutils.c dix: optimize CallCallbacks 2010-10-13 09:24:06 -07:00
enterleave.c Use GetCurrentRootWindow or equivalent instead of spriteTrace[0]. 2010-10-13 15:58:12 +10:00
enterleave.h dix: call SetFocusOut and LeaveWindow when disabling a device. 2009-08-03 10:11:48 +10:00
eventconvert.c Fix unset valuator handling for XI 1.x valuator events again 2011-04-08 09:55:38 -04:00
events.c dix: fix an error message. 2011-06-11 10:07:28 -07:00
extension.c dix: fix memory leak in ProcListExtensions 2011-04-04 17:27:12 +03:00
ffs.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
gc.c Un-export CreateScratchGC now that nothing external uses it. 2010-09-13 15:58:08 -07:00
getevents.c dix: only transform valuators when we need them. 2011-08-11 21:30:23 -07:00
globals.c dix: delete logo hack screen saver 2010-11-11 23:20:35 +02:00
glyphcurs.c Replace dixChangeGC with calls directly to the right variant. 2010-05-13 17:14:07 -07:00
grabs.c Remove more superfluous if(p!=NULL) checks around free(p). 2010-11-11 08:29:54 +10:00
initatoms.c Rework symbol visibility for easier maintenance 2008-12-03 05:43:34 -02:00
inpututils.c input: add valuator_mask_free() to free a valuator mask. 2011-01-07 08:28:27 +10:00
main.c XQuartz: Don't call mieqEnqueue during server shutdown 2011-05-16 18:47:20 -07:00
Makefile.am dix: Fix make distcheck 2010-11-14 10:25:54 -08:00
pixmap.c Change the devPrivates API to require dixRegisterPrivateKey 2010-06-05 19:23:03 -07:00
privates.c Add fence sync driver interface 2010-12-06 19:15:26 -08:00
property.c DIX: Reset window properties when freeing them 2010-12-31 12:52:50 +00:00
protocol.txt Add DRI2 requests to protocol.txt 2009-08-28 23:29:05 -04:00
ptrveloc.c dix: fix typo in direction calculation 2011-05-04 10:14:10 +10:00
region.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
registry.c Replace X-allocation functions with their C89 counterparts 2010-05-13 00:22:37 +07:00
resource.c resource: Fix indentation 2011-01-20 21:08:17 -05:00
selection.c Fix property and selection devPrivate allocation. 2010-09-10 11:44:12 -07:00
swaprep.c Replace X-allocation functions with their C89 counterparts 2010-05-13 00:22:37 +07:00
swapreq.c Remove unnecessary parentheses around return values in functions 2010-06-10 06:42:42 -07:00
tables.c dix: remove proc tables initialization 2010-09-28 16:46:46 +03:00
window.c DIX: Set backgroundState correctly for root window 2011-06-01 19:41:02 -07:00
Xserver-dtrace.h.in Sun's copyrights now belong to Oracle 2010-12-07 11:10:35 -08:00
Xserver.d Sun's copyrights now belong to Oracle 2010-12-07 11:10:35 -08:00