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

Reply via email to