All pastes #913095 Raw Edit

Anonymous

public text v1 · immutable
·published 2008-02-21 20:53 UTC
rendered paste body
186a187
> static BOOL useEvdevKeymap = FALSE;
1153a1155,1160
> #ifdef RT_OS_LINUX
>         else if (strcmp(argv[curArg], "-evdevkeymap") == 0)
>         {
>             useEvdevKeymap = TRUE;
>         }
> #endif /* RT_OS_LINUX  */
2842,2856c2849,2851
<     if (keycode < 9)
<     {
<         keycode = 0;
<     }
<     else if (keycode < 97)
<     {
<         // just an offset (Xorg MIN_KEYCODE)
<         keycode -= 8;
<     }
<     else if (keycode < 158)
<     {
<         // apply conversion table
<         keycode = x_keycode_to_pc_keycode[keycode - 97];
<     }
<     else if (keycode == 208)
---
>     // workaround for SDL keyboard translation issues on EVDEV
>     // keycodes > 0x100 are sent as 0xe0 keycode
>     static const uint16_t evdev_keycode_to_pc_keycode[61] =
2858,2861c2853,2919
<         // Japanese Hiragana to Katakana
<         keycode = 0x70;
<     }
<     else if (keycode == 211)
---
>        0x0,         /*  97 EVDEV - RO   */
>        //Japanese Keys
>        0x0,         /*  98 EVDEV - KATA */
>        0x0,         /*  99 EVDEV - HIRA */
>        0x0,         /* 100 EVDEV - HENK */
>        0x0,         /* 101 EVDEV - HKTG */
>        0x0,         /* 102 EVDEV - MUHE */
>        0x0,         /* 103 EVDEV - JPCM */
>        //"Normal" Keys
>        0x1c|0x100,  /* 104 EVDEV - KPEN */
>        0x1d|0x100,  /* 105 EVDEV - RCTL */
>        0x35|0x100,  /* 106 EVDEV - KPDV */
>        0x37|0x100,  /* 107 EVDEV - PRSC */
>        0x38|0x100,  /* 108 EVDEV - RALT */
>        0x0,         /* 109 EVDEV - LNFD */
>        0x47|0x100,  /* 110 EVDEV - HOME */
>        0x48|0x100,  /* 111 EVDEV - UP   */
>        0x49|0x100,  /* 112 EVDEV - PGUP */
>        0x4b|0x100,  /* 113 EVDEV - LEFT */
>        0x4d|0x100,  /* 114 EVDEV - RGHT */
>        0x4f|0x100,  /* 115 EVDEV - END  */
>        0x50|0x100,  /* 116 EVDEV - DOWN */
>        0x51|0x100,  /* 117 EVDEV - PGDN */
>        0x52|0x100,  /* 118 EVDEV - INS  */
>        0x53|0x100,  /* 119 EVDEV - DELE */
>        0x0,         /* 120 EVDEV - I120 */
>        0x0,         /* 121 EVDEV - MUTE */
>        0x0,         /* 122 EVDEV - VOL- */
>        0x0,         /* 123 EVDEV - VOL+ */
>        0x0,         /* 124 EVDEV - POWR */
>        0x0,         /* 125 EVDEV - KPEQ */
>        0x0,         /* 126 EVDEV - I126 */
>        0x0,         /* 127 EVDEV - PAUS */
>        0x0,         /* 128 EVDEV - ???? */
>        0x0,         /* 129 EVDEV - I129 */
>        0x0,         /* 130 EVDEV - HNGL */
>        0x0,         /* 131 EVDEV - HJCV */
>        0x0,         /* 132 EVDEV - AE13 */
>        0x5b|0x100,  /* 133 EVDEV - LWIN */
>        0x5c|0x100,  /* 134 EVDEV - RWIN */
>        0x5d|0x100,  /* 135 EVDEV - MENU */
>        //Solaris Stuff
>        0x0,         /* 136 EVDEV - STOP */
>        0x0,         /* 137 EVDEV - AGAI */
>        0x0,         /* 138 EVDEV - PROP */
>        0x0,         /* 139 EVDEV - UNDO */
>        0x0,         /* 140 EVDEV - FRNT */
>        0x0,         /* 141 EVDEV - COPY */
>        0x0,         /* 142 EVDEV - OPEN */
>        0x0,         /* 143 EVDEV - PAST */
>        0x0,         /* 144 EVDEV - FIND */
>        0x0,         /* 145 EVDEV - CUT  */
>        0x0,         /* 146 EVDEV - HELP */
>        //Extended Keys
>        0x0,         /* 147 EVDEV - I147 */
>        0x0,         /* 148 EVDEV - I148 */
>        0x0,         /* 149 EVDEV - I149 */
>        0x0,         /* 150 EVDEV - I150 */
>        0x0,         /* 151 EVDEV - I151 */
>        0x0,         /* 152 EVDEV - I152 */
>        0x0,         /* 153 EVDEV - I153 */
>        0x0,         /* 154 EVDEV - I154 */
>        0x0,         /* 155 EVDEV - I156 */
>        0x0,         /* 156 EVDEV - I157 */
>        0x0,         /* 157 EVDEV - I158 */
>     };
>     if(useEvdevKeymap)
2863,2864c2921,2948
<         // Japanese backslash/underscore and Brazilian backslash/question mark
<         keycode = 0x73;
---
>         if (keycode < 9)
>         {
>             keycode = 0;
>         }
>         else if (keycode < 97)
>         {
>             // just an offset (Xorg MIN_KEYCODE)
>             keycode -= 8;
>         }
>         else if (keycode < 158)
>         {
>             // apply EVDEV conversion table
>             keycode = evdev_keycode_to_pc_keycode[keycode - 97];
>         }
>         else if (keycode == 208)
>         {
>             // Japanese Hiragana to Katakana
>             keycode = 0x70;
>         }
>         else if (keycode == 211)
>         {
>             // Japanese backslash/underscore and Brazilian backslash/question mark
>             keycode = 0x73;
>         }
>         else
>         {
>             keycode = 0;
>         }
2868c2952,2979
<         keycode = 0;
---
>         if (keycode < 9)
>         {
>             keycode = 0;
>         }
>         else if (keycode < 97)
>         {
>             // just an offset (Xorg MIN_KEYCODE)
>             keycode -= 8;
>         }
>         else if (keycode < 158)
>         {
>             // apply conversion table
>             keycode = x_keycode_to_pc_keycode[keycode - 97];
>         }
>         else if (keycode == 208)
>         {
>             // Japanese Hiragana to Katakana
>             keycode = 0x70;
>         }
>         else if (keycode == 211)
>         {
>             // Japanese backslash/underscore and Brazilian backslash/question mark
>             keycode = 0x73;
>         }
>         else
>         {
>             keycode = 0;
>         }
2870d2980
<