Module Name: xsrc
Committed By: martin
Date: Wed Aug 19 18:57:25 UTC 2009
Modified Files:
xsrc/external/mit/xf86-input-mouse/dist/src: mouse.c
Log Message:
Fix my favourite mouse handling bug for the Nth time: with a multiplexed
device like wsmouse it does not make sense to kill emulate3buttons on
first button-3-pressed event. The button-3 pressed may belong to a mouse
long gone and leave the internal (two button only) mousepad useless.
To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 xsrc/external/mit/xf86-input-mouse/dist/src/mouse.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: xsrc/external/mit/xf86-input-mouse/dist/src/mouse.c
diff -u xsrc/external/mit/xf86-input-mouse/dist/src/mouse.c:1.8 xsrc/external/mit/xf86-input-mouse/dist/src/mouse.c:1.9
--- xsrc/external/mit/xf86-input-mouse/dist/src/mouse.c:1.8 Tue Aug 18 05:34:17 2009
+++ xsrc/external/mit/xf86-input-mouse/dist/src/mouse.c Wed Aug 19 18:57:25 2009
@@ -2062,6 +2062,19 @@
if (!pMse->emulate3ButtonsSoft)
return TRUE;
+#if defined(__NetBSD__) && defined(WSCONS_SUPPORT)
+ /*
+ * XXXX - check for pMse->protocolID being wsmouse? Why doesn't it
+ * have it's own ID?
+ * On NetBSD a wsmouse is a multiplexed device. Imagine a notebook
+ * with two-button mousepad, and an external USB mouse plugged in
+ * temporarily. After using button 3 on the external mouse and
+ * unplugging it again, the mousepad will still need to emulate
+ * 3 buttons.
+ */
+ return TRUE;
+#endif
+
pMse->emulate3Buttons = FALSE;
if (pMse->emulate3Pending)