Back in April I wrote:
> I have a slightly unusual wireless mouse with 6 buttons.  3 are the 
> normal mouse buttons and work correctly, while the other 3 behave like 
> keyboard keys F13 to F15.  So far I have failed to get DirectFB to 
> recognise these extra buttons.

I have tracked this down to some DIKI_UNKNOWN entries in 
basic_keycodes, around line 249 of linux_input.c.

In include/linux/input.h I find:

#define KEY_F13                 183
#define KEY_F14                 184
#define KEY_F15                 185
#define KEY_F16                 186
#define KEY_F17                 187
#define KEY_F18                 188
#define KEY_F19                 189
#define KEY_F20                 190
#define KEY_F21                 191
#define KEY_F22                 192
#define KEY_F23                 193
#define KEY_F24                 194

My mouse returns codes 183-185.  The corresponding entries in 
basic_keycodes are all 'unknown'.

Is there any reason why these are 'unknown', or can they be fixed?

A patch follows.

Regards,  Phil.


--- 
orig/DirectFB-1.0.0/inputdrivers/linux_input/linux_input.c      2007-03-03 
20:34:28.000000000 +0000
+++ DirectFB-1.0.0/inputdrivers/linux_input/linux_input.c       2007-05-26 
23:08:39.000000000 +0100
@@ -246,13 +246,16 @@
       /*KEY_KPLEFTPAREN,*/ DIKI_UNKNOWN,
       /*KEY_KPRIGHTPAREN,*/ DIKI_UNKNOWN,

-     DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN,
-     DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN,
+     /* unused codes 181-182: */
+     DIKI_UNKNOWN, DIKI_UNKNOWN,

-     DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN,
-     DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN,
+     DFB_FUNCTION_KEY(13), DFB_FUNCTION_KEY(14), DFB_FUNCTION_KEY(15),
+     DFB_FUNCTION_KEY(16), DFB_FUNCTION_KEY(17), DFB_FUNCTION_KEY(18),
+     DFB_FUNCTION_KEY(19), DFB_FUNCTION_KEY(20), DFB_FUNCTION_KEY(21),
+     DFB_FUNCTION_KEY(22), DFB_FUNCTION_KEY(23), DFB_FUNCTION_KEY(24),

-     DIKI_UNKNOWN,
+     /* unused codes 195-199: */
+     DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN, DIKI_UNKNOWN,

       /* KEY_PLAYCD, KEY_PAUSECD */
       DIKS_PLAY, DIKS_PAUSE,





_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to