Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > by-pkgid > f61e77e5e59d68d6d5afb33638a78a65 > files > 1

x11-driver-input-evdev-1.99.1-2mdv2008.1.src.rpm

From 90fbd754df55da63e7d917f5ee6447bacee26a37 Mon Sep 17 00:00:00 2001
From: Ander Conselvan de Oliveira <ander@mandriva.com.br>
Date: Thu, 26 Jun 2008 14:36:58 -0300
Subject: [PATCH] Mice with a lot of buttons (e.g. Logitech MX1000) generate button events greater than BTN_TASK.

---
 src/evdev.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/src/evdev.c b/src/evdev.c
index 0078881..da6fa3b 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -252,8 +252,15 @@ EvdevReadInput(InputInfoPtr pInfo)
 		break;
 
             default:
-		if (ev.code > BTN_TASK && ev.code < KEY_OK)
+		if (ev.code > BTN_TASK && ev.code < KEY_OK) {
+		    /* Some fancy mice with a lot of buttons generate
+		     * button events between BTN_TASK and BTN_JOYSTICK */
+		    if (ev.code < BTN_JOYSTICK)
+			xf86PostButtonEvent(pInfo->dev, 0,
+			                    ev.code - BTN_LEFT + 5,
+			                    value, 0, 0);
 		    break;
+		}
 
                 PostKbdEvent(pInfo, &ev, value);
 		break;
-- 
1.5.6