Commit a065c557 authored by Sam Lantinga's avatar Sam Lantinga

Fixed bug #201

Here's a patch for SDL_fbevents.c that makes SDL fbcon recognize both left Alt
and right Alt (altgr). Without this, it's impossible to write a lot of
characters on a standard fi-latin1 mapped keyboard, like "@£${[]}\|~".

/Jonatan

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%401746
parent a93e2caf
...@@ -1115,6 +1115,12 @@ void FB_InitOSKeymap(_THIS) ...@@ -1115,6 +1115,12 @@ void FB_InitOSKeymap(_THIS)
case SCANCODE_LEFTWIN: case SCANCODE_LEFTWIN:
keymap[i] = SDLK_LSUPER; keymap[i] = SDLK_LSUPER;
break; break;
case SCANCODE_LEFTALT:
keymap[i] = SDLK_LALT;
break;
case SCANCODE_RIGHTALT:
keymap[i] = SDLK_RALT;
break;
case 127: case 127:
keymap[i] = SDLK_MENU; keymap[i] = SDLK_MENU;
break; break;
...@@ -1216,10 +1222,10 @@ static SDL_keysym *TranslateKey(int scancode, SDL_keysym *keysym) ...@@ -1216,10 +1222,10 @@ static SDL_keysym *TranslateKey(int scancode, SDL_keysym *keysym)
if ( modstate & KMOD_CTRL ) { if ( modstate & KMOD_CTRL ) {
map |= (1<<KG_CTRL); map |= (1<<KG_CTRL);
} }
if ( modstate & KMOD_ALT ) { if ( modstate & KMOD_LALT ) {
map |= (1<<KG_ALT); map |= (1<<KG_ALT);
} }
if ( modstate & KMOD_MODE ) { if ( modstate & KMOD_RALT ) {
map |= (1<<KG_ALTGR); map |= (1<<KG_ALTGR);
} }
if ( KTYP(vga_keymap[map][scancode]) == KT_LETTER ) { if ( KTYP(vga_keymap[map][scancode]) == KT_LETTER ) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment