Hiya Nicholas, thanks for the patch! no fixed why of sending, so either is ok.
That was a silly mistake. Put your patch in the 1.3.x branch. Not sure what to do with the keymap tho.. Maybe in directfb-examples.. But then maybe df_input needs to be extended with an option for reading keymaps or something.. btw why did you send it to directfb-patches? We had some security rearrangements after a (failed) attack, so some things might be out of order.. Greets Niels Nicholas Beck wrote: > This is my first patch to DFB so apologies if it is not the preferred > format. I have included it both inline and as an attachment just in case > one is more preferable than the other. > > I tried sending to directfb-patc...@directfb.org, but got a mailbox > non-existent error. > > signed-off-by: Nicholas Beck <nb...@mpc-data.co.uk> > > This patch fixes a small bug in the keymap loading functionality for > linux-input USB keyboards. There is also a sample UK keymap file that > may be of use to others (as a starting point at least), please feel free > to break it out of the patch if you wish. > > Regards, > Nicholas Beck > > --- src/core/input.c.orig 2009-01-05 12:11:48.000000000 +0000 > +++ src/core/input.c 2009-01-05 12:12:08.000000000 +0000 > @@ -1446,10 +1446,10 @@ load_keymap( CoreInputDevice * > continue; > > /* check for lock state change */ > - if( strncmp(buffer,"capslock:",9) ) { lockstate |= > DILS_CAPS; continue; } > - if( strncmp(buffer,":capslock",9) ) { lockstate &= > ~DILS_CAPS; continue; } > - if( strncmp(buffer,"numlock:",8) ) { lockstate |= > DILS_NUM; continue; } > - if( strncmp(buffer,":numlock",8) ) { lockstate &= > ~DILS_NUM; continue; } > + if( !strncmp(buffer,"capslock:",9) ) { lockstate |= > DILS_CAPS; continue; } > + if( !strncmp(buffer,":capslock",9) ) { lockstate &= > ~DILS_CAPS; continue; } > + if( !strncmp(buffer,"numlock:",8) ) { lockstate |= > DILS_NUM; continue; } > + if( !strncmp(buffer,":numlock",8) ) { lockstate &= > ~DILS_NUM; continue; } > > i = sscanf( buffer, " keycode %i = %s = %s %s %s %s %i\n", > &keycode, diki, diks[0], diks[1], diks[2], diks[3], > &dummy ); > > > --- dummy-usb_kbd.map 1970-01-01 01:00:00.000000000 +0100 > +++ usb_kbd.map 2009-01-05 13:37:40.000000000 +0000 > @@ -0,0 +1,93 @@ > +# Keymap for SEJIN USB Mini Keyboard - may well be ok for most UK keyboards > + > +keycode 1 = ESCAPE = ESCAPE > +keycode 2 = 1 = 1 EXCLAMATION_MARK > +keycode 3 = 2 = 2 QUOTATION > +keycode 4 = 3 = 3 NUMBER_SIGN > +keycode 5 = 4 = 4 DOLLAR_SIGN > +keycode 6 = 5 = 5 PERCENT_SIGN > +keycode 7 = 6 = 6 CIRCUMFLEX_ACCENT > +keycode 8 = 7 = 7 AMPERSAND > +keycode 9 = 8 = 8 ASTERISK > +keycode 10 = 9 = 9 PARENTHESIS_LEFT > +keycode 11 = 0 = 0 PARENTHESIS_RIGHT > +keycode 12 = MINUS_SIGN = MINUS_SIGN UNDERSCORE > +keycode 13 = EQUALS_SIGN = EQUALS_SIGN PLUS_SIGN > +keycode 14 = BACKSPACE = BACKSPACE > +keycode 15 = TAB = TAB > +keycode 16 = Q = SMALL_Q CAPITAL_Q > +keycode 17 = W = SMALL_W CAPITAL_W > +keycode 18 = E = SMALL_E CAPITAL_E > +keycode 19 = R = SMALL_R CAPITAL_R > +keycode 20 = T = SMALL_T CAPITAL_T > +keycode 21 = Y = SMALL_Y CAPITAL_Y > +keycode 22 = U = SMALL_U CAPITAL_U > +keycode 23 = I = SMALL_I CAPITAL_I > +keycode 24 = O = SMALL_O CAPITAL_O > +keycode 25 = P = SMALL_P CAPITAL_P > +keycode 26 = SQUARE_BRACKET_LEFT = SQUARE_BRACKET_LEFT CURLY_BRACKET_LEFT > +keycode 27 = SQUARE_BRACKET_RIGHT = SQUARE_BRACKET_RIGHT > CURLY_BRACKET_RIGHT > +keycode 28 = ENTER = RETURN > +keycode 29 = CONTROL_L = CONTROL CONTROL > +keycode 30 = A = SMALL_A CAPITAL_A > +keycode 31 = S = SMALL_S CAPITAL_S > +keycode 32 = D = SMALL_D CAPITAL_D > +keycode 33 = F = SMALL_F CAPITAL_F > +keycode 34 = G = SMALL_G CAPITAL_G > +keycode 35 = H = SMALL_H CAPITAL_H > +keycode 36 = J = SMALL_J CAPITAL_J > +keycode 37 = K = SMALL_K CAPITAL_K > +keycode 38 = L = SMALL_L CAPITAL_L > +keycode 39 = SEMICOLON = SEMICOLON COLON > +keycode 40 = QUOTE_RIGHT = APOSTROPHE AT > +keycode 41 = QUOTE_LEFT = GRAVE_ACCENT VERTICAL_BAR > +keycode 42 = SHIFT_L = SHIFT SHIFT > +keycode 43 = NUMBER_SIGN = NUMBER_SIGN TILDE > +keycode 44 = Z = SMALL_Z CAPITAL_Z > +keycode 45 = X = SMALL_X CAPITAL_X > +keycode 46 = C = SMALL_C CAPITAL_C > +keycode 47 = V = SMALL_V CAPITAL_V > +keycode 48 = B = SMALL_B CAPITAL_B > +keycode 49 = N = SMALL_N CAPITAL_N > +keycode 50 = M = SMALL_M CAPITAL_M > +keycode 51 = COMMA = COMMA LESS_THAN_SIGN > +keycode 52 = PERIOD = PERIOD GREATER_THAN_SIGN > +keycode 53 = SLASH = SLASH QUESTION_MARK > +keycode 54 = SHIFT_R = SHIFT SHIFT > +# keycode 55 = KP_MULT > +keycode 56 = ALT_L = ALT ALT > +keycode 57 = SPACE = SPACE > +keycode 58 = CAPS_LOCK = CAPS_LOCK > +keycode 59 = F1 = F1 > +keycode 60 = F2 = F2 > +keycode 61 = F3 = F3 > +keycode 62 = F4 = F4 > +keycode 63 = F5 = F5 > +keycode 64 = F6 = F6 > +keycode 65 = F7 = F7 > +keycode 66 = F8 = F8 > +keycode 67 = F9 = F9 > +keycode 68 = F10 = F10 > +keycode 69 = NUM_LOCK = NUM_LOCK > +keycode 70 = SCROLL_LOCK = SCROLL_LOCK > +keycode 86 = LESS_SIGN = BACKSLASH VERTICAL_BAR > +keycode 87 = F11 = F11 > +keycode 88 = F12 = F12 > +keycode 99 = PRINT = PRINT > +keycode 100 = ALT_R = ALTGR ALTGR > +keycode 102 = HOME = HOME > +keycode 103 = UP = CURSOR_UP > +keycode 104 = PAGE_UP = PAGE_UP > +keycode 105 = LEFT = CURSOR_LEFT > +keycode 106 = RIGHT = CURSOR_RIGHT > +keycode 107 = END = END > +keycode 108 = DOWN = CURSOR_DOWN > +keycode 109 = PAGE_DOWN = PAGE_DOWN > +keycode 110 = INSERT = INSERT > +keycode 111 = DELETE = DELETE > + > +keycode 119 = PAUSE = PAUSE BREAK > + > +keycode 125 = META_L = META > +keycode 127 = SUPER_L = SUPER > + > > -- .------------------------------------------. | DirectFB - Hardware accelerated graphics | | http://www.directfb.org/ | "------------------------------------------" _______________________________________________ directfb-dev mailing list directfb-dev@directfb.org http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev