fixed level editor key shortcuts (broken by regression)
authorHolger Schemel <info@artsoft.org>
Wed, 19 Aug 2020 21:37:33 +0000 (23:37 +0200)
committerHolger Schemel <info@artsoft.org>
Thu, 20 Aug 2020 18:09:57 +0000 (20:09 +0200)
This change fixes a regression of commit 888ee049 that causes problems
when handling text input in situations unrelated to the Android screen
keyboard, like entering key shortcuts with upper case letters inside
the level editor on non-Android platforms.

Thanks to Eizzoux for reporting this bug!

src/events.c

index 2678fa28b94c227855bd4f772ae5bcc57615f31c..834b4232b28ccbe96c7360931b52c2d829c7404f 100644 (file)
@@ -1382,7 +1382,12 @@ static void HandleButtonOrFinger(int mx, int my, int button)
 
 static boolean checkTextInputKey(Key key)
 {
-  return (textinput_status && KSYM_PRINTABLE(key));
+  // when playing, only handle raw key events and ignore text input
+  if (game_status == GAME_MODE_PLAYING)
+    return FALSE;
+
+  // else handle all printable keys as text input
+  return KSYM_PRINTABLE(key);
 }
 
 void HandleTextEvent(TextEvent *event)