summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/PowderToySDL.cpp4
-rw-r--r--src/interface/Keys.h20
2 files changed, 19 insertions, 5 deletions
diff --git a/src/PowderToySDL.cpp b/src/PowderToySDL.cpp
index eac1bc5..24f91c2 100644
--- a/src/PowderToySDL.cpp
+++ b/src/PowderToySDL.cpp
@@ -471,10 +471,10 @@ int main(int argc, char * argv[])
engine->Exit();
break;
case SDL_KEYDOWN:
- engine->onKeyPress(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_SHIFT, event.key.keysym.mod&KEY_MOD_CONTROL, event.key.keysym.mod&KEY_MOD_ALT);
+ engine->onKeyPress(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_LSHIFT, event.key.keysym.mod&KEY_MOD_LCONTROL, event.key.keysym.mod&KEY_MOD_LALT);
break;
case SDL_KEYUP:
- engine->onKeyRelease(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_SHIFT, event.key.keysym.mod&KEY_MOD_CONTROL, event.key.keysym.mod&KEY_MOD_ALT);
+ engine->onKeyRelease(event.key.keysym.sym, event.key.keysym.unicode, event.key.keysym.mod&KEY_MOD_LSHIFT, event.key.keysym.mod&KEY_MOD_LCONTROL, event.key.keysym.mod&KEY_MOD_LALT);
break;
case SDL_MOUSEMOTION:
engine->onMouseMove(event.motion.x*inputScale, event.motion.y*inputScale);
diff --git a/src/interface/Keys.h b/src/interface/Keys.h
index b18a4c3..69b00fe 100644
--- a/src/interface/Keys.h
+++ b/src/interface/Keys.h
@@ -18,9 +18,23 @@
#define KEY_ALT SDLK_LALT
#define KEY_SHIFT SDLK_LSHIFT
-#define KEY_MOD_CONTROL KMOD_CTRL
-#define KEY_MOD_ALT KMOD_ALT
-#define KEY_MOD_SHIFT KMOD_SHIFT
+#define KEY_MOD_NONE KMOD_NONE
+#define KEY_MOD_LSHIFT KMOD_LSHIFT
+#define KEY_MOD_RSHIFT KMOD_RSHIFT
+#define KEY_MOD_LCONTROL KMOD_LCTRL
+#define KEY_MOD_RCONTROL KMOD_RCTRL
+#define KEY_MOD_LALT KMOD_LALT
+#define KEY_MOD_RALT KMOD_RALT
+#define KEY_MOD_LMETA KMOD_LMETA
+#define KEY_MOD_RMETA KMOD_RMETA
+#define KEY_MOD_NUM KMOD_NUM
+#define KEY_MOD_CAPS KMOD_CAPS
+#define KEY_MOD_MODE KMOD_MODE
+#define KEY_MOD_RESERVED KMOD_RESERVED
+
+#define KEY_MOD_CONTROL KEY_MOD_RCONTROL | KEY_MOD_LCONTROl
+#define KEY_MOD_ALT KEY_MOD_RALT | KEY_MOD_LALT
+#define KEY_MOD_SHIFT KEY_MOD_RSHIFT | KEY_MOD_LSHIFT
#define KEY_a SDLK_a
#define KEY_d SDLK_d