diff --git a/src/modules/event/Event.cpp b/src/modules/event/Event.cpp index 51cbc08f6..2ba10870b 100644 --- a/src/modules/event/Event.cpp +++ b/src/modules/event/Event.cpp @@ -228,6 +228,8 @@ namespace event {"power", love::keyboard::Keyboard::KEY_POWER}, {"euro", love::keyboard::Keyboard::KEY_EURO}, {"undo", love::keyboard::Keyboard::KEY_UNDO}, + + {"unknown", love::keyboard::Keyboard::KEY_UNKNOWN}, }; StringMap Event::keys(Event::keyEntries, sizeof(Event::keyEntries)); diff --git a/src/modules/event/sdl/Event.cpp b/src/modules/event/sdl/Event.cpp index a288ca166..b5e369abe 100644 --- a/src/modules/event/sdl/Event.cpp +++ b/src/modules/event/sdl/Event.cpp @@ -117,7 +117,7 @@ namespace sdl case Event::TYPE_KEY_PRESSED: e.type = SDL_KEYDOWN; e.key.keysym.unicode = (Uint16)m.keyboard.u; - return keys.find(m.keyboard.k, e.key.keysym.sym);; + return keys.find(m.keyboard.k, e.key.keysym.sym); case Event::TYPE_KEY_RELEASED: e.type = SDL_KEYUP; return keys.find(m.keyboard.k, e.key.keysym.sym); @@ -290,6 +290,8 @@ namespace sdl { love::keyboard::Keyboard::KEY_POWER, SDLK_POWER }, { love::keyboard::Keyboard::KEY_EURO, SDLK_EURO }, { love::keyboard::Keyboard::KEY_UNDO, SDLK_UNDO }, + + { love::keyboard::Keyboard::KEY_UNKNOWN, SDLK_UNKNOWN }, }; EnumMap Event::keys(Event::keyEntries, sizeof(Event::keyEntries)); diff --git a/src/modules/keyboard/Keyboard.h b/src/modules/keyboard/Keyboard.h index a5b016280..9d3753a4e 100644 --- a/src/modules/keyboard/Keyboard.h +++ b/src/modules/keyboard/Keyboard.h @@ -1,14 +1,14 @@ /** * Copyright (c) 2006-2011 LOVE Development Team -* +* * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages * arising from the use of this software. -* +* * Permission is granted to anyone to use this software for any purpose, * including commercial applications, and to alter it and redistribute it * freely, subject to the following restrictions: -* +* * 1. The origin of this software must not be misrepresented; you must not * claim that you wrote the original software. If you use this software * in a product, an acknowledgment in the product documentation would be @@ -197,4 +197,4 @@ namespace keyboard } // keyboard } // love -#endif // LOVE_KEYBOARD_KEYBOARD_H \ No newline at end of file +#endif // LOVE_KEYBOARD_KEYBOARD_H diff --git a/src/modules/keyboard/sdl/Keyboard.cpp b/src/modules/keyboard/sdl/Keyboard.cpp index 1b7aae8d3..61b04161a 100644 --- a/src/modules/keyboard/sdl/Keyboard.cpp +++ b/src/modules/keyboard/sdl/Keyboard.cpp @@ -1,14 +1,14 @@ /** * Copyright (c) 2006-2011 LOVE Development Team -* +* * This software is provided 'as-is', without any express or implied * warranty. In no event will the authors be held liable for any damages * arising from the use of this software. -* +* * Permission is granted to anyone to use this software for any purpose, * including commercial applications, and to alter it and redistribute it * freely, subject to the following restrictions: -* +* * 1. The origin of this software must not be misrepresented; you must not * claim that you wrote the original software. If you use this software * in a product, an acknowledgment in the product documentation would be @@ -34,14 +34,14 @@ namespace sdl bool Keyboard::isDown(Key key) const { SDLKey k; - + if(keys.find(key, k)) - { + { Uint8 * keystate = SDL_GetKeyState(0); - return keystate[(unsigned)k] == 1; + return keystate[(unsigned)k] == 1; } - return false; + return false; } void Keyboard::setKeyRepeat(int delay, int interval) const @@ -58,7 +58,7 @@ namespace sdl SDL_GetKeyRepeat(&delay, &interval); return delay; } - + int Keyboard::getKeyRepeatInterval() const { int delay, interval = 0; @@ -66,7 +66,7 @@ namespace sdl return interval; } - EnumMap::Entry Keyboard::keyEntries[] = + EnumMap::Entry Keyboard::keyEntries[] = { { Keyboard::KEY_BACKSPACE, SDLK_BACKSPACE}, { Keyboard::KEY_TAB, SDLK_TAB},