debian/changelog | 7 +++++ debian/patches/series | 1 debian/patches/vmmouse_scale_input_data.diff | 32 +++++++++++++++++++++++++++ 3 files changed, 40 insertions(+)
New commits: commit 6ea80a616f50bdba22dc5043ab9630d0f80b8a99 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Thu Jan 3 15:13:59 2008 +0100 Scale input events, as X 1.4 doesn't do that itself anymore. Patch by Joerg Platte <[EMAIL PROTECTED]> (closes: #442853). Acked by Peter Hutterer in fdo bug#13552 (comment#3). diff --git a/debian/changelog b/debian/changelog index 5e1378c..5321a12 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +xserver-xorg-input-vmmouse (1:12.4.3-2) UNRELEASED; urgency=low + + * Scale input events, as X 1.4 doesn't do that itself anymore. + Patch by Joerg Platte <[EMAIL PROTECTED]> (closes: #442853). + + -- Julien Cristau <[EMAIL PROTECTED]> Thu, 03 Jan 2008 15:10:01 +0100 + xserver-xorg-input-vmmouse (1:12.4.3-1) unstable; urgency=low * New upstream version. diff --git a/debian/patches/series b/debian/patches/series index e69de29..6c8a4e2 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -0,0 +1 @@ +vmmouse_scale_input_data.diff diff --git a/debian/patches/vmmouse_scale_input_data.diff b/debian/patches/vmmouse_scale_input_data.diff new file mode 100644 index 0000000..1bca5c7 --- /dev/null +++ b/debian/patches/vmmouse_scale_input_data.diff @@ -0,0 +1,32 @@ +--- a/src/vmmouse.c 2007-09-26 01:11:47.000000000 +0200 ++++ b/src/vmmouse-new.c 2007-12-04 22:44:21.000000000 +0100 +@@ -960,12 +960,15 @@ + static void + GetVMMouseMotionEvent(InputInfoPtr pInfo){ + MouseDevPtr pMse; ++ VMMousePrivPtr mPriv; + int buttons, dx, dy, dz, dw; ++ double factorX, factorY; + VMMOUSE_INPUT_DATA vmmouseInput; + int ps2Buttons = 0; + int numPackets; + + pMse = pInfo->private; ++ mPriv = pMse->mousePriv; + while((numPackets = VMMouseClient_GetInput(&vmmouseInput))){ + if (numPackets == VMMOUSE_ERROR) { + VMMouseClient_Disable(); +@@ -990,6 +993,13 @@ + dy = vmmouseInput.Y; + dz = (char)vmmouseInput.Z; + dw = 0; ++ /* scale the input data based on the screen dimensions */ ++ factorX = ((double) screenInfo.screens[mPriv->screenNum]->width) / (double) 65535; ++ factorY = ((double) screenInfo.screens[mPriv->screenNum]->height) / (double) 65535; ++ ++ dx = dx * factorX + 0.5; ++ dy = dy * factorY + 0.5; ++ + /* post an event */ + pMse->PostEvent(pInfo, buttons, dx, dy, dz, dw); + } -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]