From 00ebb057281ba305c2adc5f76382ef62c1439717 Mon Sep 17 00:00:00 2001 From: Benjamin Schulte Date: Tue, 29 Dec 2020 18:58:43 +0100 Subject: [PATCH] iOS Input catch exception for unknown keys from hardware keyboard --- .../gdx/backends/iosrobovm/DefaultIOSInput.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/backends/gdx-backend-robovm/src/com/badlogic/gdx/backends/iosrobovm/DefaultIOSInput.java b/backends/gdx-backend-robovm/src/com/badlogic/gdx/backends/iosrobovm/DefaultIOSInput.java index f4491772a6d..8267db1bc13 100644 --- a/backends/gdx-backend-robovm/src/com/badlogic/gdx/backends/iosrobovm/DefaultIOSInput.java +++ b/backends/gdx-backend-robovm/src/com/badlogic/gdx/backends/iosrobovm/DefaultIOSInput.java @@ -699,7 +699,7 @@ public boolean onKey(UIKey key, boolean down) { return false; } - int keyCode = getGdxKeyCode(key.getKeyCode()); + int keyCode = getGdxKeyCode(key); if (keyCode != Keys.UNKNOWN) synchronized (keyEvents) { @@ -957,7 +957,14 @@ public float getGyroscopeZ() { return 0; } - protected int getGdxKeyCode(UIKeyboardHIDUsage keyCode) { + protected int getGdxKeyCode(UIKey key) { + UIKeyboardHIDUsage keyCode; + try { + keyCode = key.getKeyCode(); + } catch (IllegalArgumentException e) { + return Keys.UNKNOWN; + } + switch (keyCode) { case KeyboardA: return Keys.A;