r4617 - trunk/src/target/OM-2007.2/daemons/neod/src

mickey at docs.openmoko.org mickey at docs.openmoko.org
Mon Sep 1 20:09:40 CEST 2008


Author: mickey
Date: 2008-09-01 20:09:40 +0200 (Mon, 01 Sep 2008)
New Revision: 4617

Modified:
   trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c
Log:
neod: Be more relax in keycode used for detecting activity on touch screen.

Different drivers may report different key code.  We don't really
need to care which keycode is used, just if there was a key press
at all.  So use a range test to look for any 'tool' like button press.

Signed-off-by: NeilBrown <neilb at suse.de>


Modified: trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c
===================================================================
--- trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c	2008-09-01 17:56:24 UTC (rev 4616)
+++ trunk/src/target/OM-2007.2/daemons/neod/src/buttonactions.c	2008-09-01 18:09:40 UTC (rev 4617)
@@ -49,7 +49,8 @@
 #ifdef NEOD_PLATFORM_FIC_NEO1973
     #define AUX_BUTTON_KEYCODE 169    /* aux */
     #define POWER_BUTTON_KEYCODE 116  /* power */
-    #define TOUCHSCREEN_BUTTON_KEYCODE 0x14a
+    #define TOUCHSCREEN_BUTTON_KEYCODE_MIN 0x140 /* BTN_DIGI */
+    #define TOUCHSCREEN_BUTTON_KEYCODE_MAX 0x14E /* BTN_TOOL_TRIPLETAP */
 #elif NEOD_PLATFORM_MOTOROLA_EZX
     #define AUX_BUTTON_KEYCODE 0xa7   /* voice */
     #define POWER_BUTTON_KEYCODE 0xd4 /* camera */
@@ -68,6 +69,11 @@
     #define TOUCHSCREEN_BUTTON_KEYCODE 0x14a
 #endif
 
+#ifndef TOUCHSCREEN_BUTTON_KEYCODE_MIN
+    #define TOUCHSCREEN_BUTTON_KEYCODE_MIN TOUCHSCREEN_BUTTON_KEYCODE
+    #define TOUCHSCREEN_BUTTON_KEYCODE_MAX TOUCHSCREEN_BUTTON_KEYCODE
+#endif
+
 #define HEADPHONE_INSERTION_SWITCHCODE 0x02
 #define CHARGER_INSERTION_BUTTON 0x164
 
@@ -362,7 +368,9 @@
                 }
             }
             else
-            if ( event.type == 1 && event.code == TOUCHSCREEN_BUTTON_KEYCODE )
+            if ( event.type == 1
+		 && event.code >= TOUCHSCREEN_BUTTON_KEYCODE_MIN
+		 && event.code <= TOUCHSCREEN_BUTTON_KEYCODE_MAX )
             {
                 if ( event.value == 1 ) /* pressed */
                 {




More information about the commitlog mailing list