diff options
-rw-r--r-- | engines/sci/event.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/engines/sci/event.cpp b/engines/sci/event.cpp index 9c3de07366..715156eee9 100644 --- a/engines/sci/event.cpp +++ b/engines/sci/event.cpp @@ -364,6 +364,14 @@ sciEvent SciEvent::get(unsigned int mask) { if (event.type == SCI_EVENT_KEYBOARD) { // Do we still have to translate the key? + // When Ctrl AND Alt are pressed together with a regular key, Linux will give us control-key, Windows will give + // us the actual key. My opinion is that windows is right, because under DOS the keys worked the same, anyway + // we support the other case as well + if (event.modifiers & SCI_KEYMOD_ALT) { + if (event.character < 26) + event.character += 96; + } + if (getSciVersion() <= SCI_VERSION_1_MIDDLE) { // TODO: find out if altify is also not needed for sci1late+, couldnt find any game that uses those keys // Scancodify if appropriate |