aboutsummaryrefslogtreecommitdiff
path: root/engines/agi
diff options
context:
space:
mode:
Diffstat (limited to 'engines/agi')
-rw-r--r--engines/agi/agi.cpp24
1 files changed, 16 insertions, 8 deletions
diff --git a/engines/agi/agi.cpp b/engines/agi/agi.cpp
index c15428e7c5..03b1615e85 100644
--- a/engines/agi/agi.cpp
+++ b/engines/agi/agi.cpp
@@ -113,35 +113,43 @@ void AgiEngine::processEvents() {
switch (key = event.kbd.keycode) {
case 256 + 20: // left arrow
case 260: // key pad 4
- key = KEY_LEFT;
+ if (!event.synthetic)
+ key = KEY_LEFT;
break;
case 256 + 19: // right arrow
case 262: // key pad 6
- key = KEY_RIGHT;
+ if (!event.synthetic)
+ key = KEY_RIGHT;
break;
case 256 + 17: // up arrow
case 264: // key pad 8
- key = KEY_UP;
+ if (!event.synthetic)
+ key = KEY_UP;
break;
case 256 + 18: // down arrow
case 258: // key pad 2
- key = KEY_DOWN;
+ if (!event.synthetic)
+ key = KEY_DOWN;
break;
case 256 + 24: // page up
case 265: // key pad 9
- key = KEY_UP_RIGHT;
+ if (!event.synthetic)
+ key = KEY_UP_RIGHT;
break;
case 256 + 25: // page down
case 259: // key pad 3
- key = KEY_DOWN_RIGHT;
+ if (!event.synthetic)
+ key = KEY_DOWN_RIGHT;
break;
case 256 + 22: // home
case 263: // key pad 7
- key = KEY_UP_LEFT;
+ if (!event.synthetic)
+ key = KEY_UP_LEFT;
break;
case 256 + 23: // end
case 257: // key pad 1
- key = KEY_DOWN_LEFT;
+ if (!event.synthetic)
+ key = KEY_DOWN_LEFT;
break;
case 261: // key pad 5
key = KEY_STATIONARY;