xserver-xorg-input-vmmouse: Changes to 'debian-unstable'
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 <jcristau@debian.org>
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 <jplatte@naasa.net> (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 <jplatte@naasa.net> (closes: #442853).
+
+ -- Julien Cristau <jcristau@debian.org> 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);
+ }
Reply to: