diff --git a/src/io/github/sspanak/tt9/ui/main/keys/SoftNumberKey.java b/src/io/github/sspanak/tt9/ui/main/keys/SoftNumberKey.java index 98ff333e..b10ede2b 100644 --- a/src/io/github/sspanak/tt9/ui/main/keys/SoftNumberKey.java +++ b/src/io/github/sspanak/tt9/ui/main/keys/SoftNumberKey.java @@ -40,7 +40,7 @@ public class SoftNumberKey extends SoftKey { @Override protected boolean handleRelease() { - int keyCode = Key.numberToCode(getNumber(getId())); + int keyCode = Key.numberToCode(getUpsideDownNumber(getId())); if (keyCode < 0 || !validateTT9Handler()) { return false; } @@ -142,4 +142,19 @@ public class SoftNumberKey extends SoftKey { return -1; } + + private int getUpsideDownNumber(int keyId) { + int number = getNumber(keyId); + + if (tt9 != null && tt9.getSettings().getUpsideDownKeys()) { + if (number == 1) return 7; + if (number == 2) return 8; + if (number == 3) return 9; + if (number == 7) return 1; + if (number == 8) return 2; + if (number == 9) return 3; + } + + return number; + } }