mirror of
https://github.com/X11Libre/xf86-input-vmmouse.git
synced 2026-04-14 11:54:21 +00:00
Fix device to screen space coordinate conversion
The Xserver no longer calls an input device's conversion_proc to convert x and y coordinates from device to screen space. This fix calls the conversion routine in vmmouse.c before posting the motion event to Xserver. Other drivers also seem to rely on conversion_proc, so the real fix should probably go into Xserver's code (maybe in xserver/hw/xfree86/common/xf86Xinput.c?).
This commit is contained in:
@@ -490,7 +490,13 @@ VMMouseDoPostEvent(InputInfoPtr pInfo, int buttons, int dx, int dy)
|
||||
buttons = reverseBits(reverseMap, buttons);
|
||||
|
||||
if (dx || dy) {
|
||||
xf86PostMotionEvent(pInfo->dev, !mPriv->relative, 0, 2, dx, dy);
|
||||
|
||||
/*
|
||||
* The Xserver no longer calls an input device's conversion_proc
|
||||
* to convert x and y coordinates from device to screen space.
|
||||
*/
|
||||
VMMouseConvertProc(pInfo, 0, 2, dx, dy, 0, 0, 0, 0, &dx, &dy);
|
||||
xf86PostMotionEvent(pInfo->dev, !mPriv->relative, 0, 2, dx, dy);
|
||||
}
|
||||
|
||||
if (truebuttons != pMse->lastButtons) {
|
||||
|
||||
Reference in New Issue
Block a user