diff options
| author | Jules Aguillon | 2022-03-13 00:35:15 +0100 |
|---|---|---|
| committer | Jules Aguillon | 2022-03-13 00:35:15 +0100 |
| commit | a57bdf8cfb76e8680f77b95c1ad84f2e76e087a9 (patch) | |
| tree | 1e405f348c895c20580162e0f328939e025e62b7 /srcs/juloo.keyboard2/KeyModifier.java | |
| parent | ee6e892ef4b85d3f9e57f03efcbf971b6fb373b2 (diff) | |
| download | unexpected-keyboard-a57bdf8cfb76e8680f77b95c1ad84f2e76e087a9.tar.gz unexpected-keyboard-a57bdf8cfb76e8680f77b95c1ad84f2e76e087a9.zip | |
Avoid showing some symbols twice in Fn mode
Diffstat (limited to 'srcs/juloo.keyboard2/KeyModifier.java')
| -rw-r--r-- | srcs/juloo.keyboard2/KeyModifier.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/srcs/juloo.keyboard2/KeyModifier.java b/srcs/juloo.keyboard2/KeyModifier.java index 21925fe..a44794e 100644 --- a/srcs/juloo.keyboard2/KeyModifier.java +++ b/srcs/juloo.keyboard2/KeyModifier.java @@ -14,7 +14,7 @@ class KeyModifier /* Modify a key according to modifiers. */ public static KeyValue handleFlags(KeyValue k, int flags) { - if (flags == 0) // No modifier + if (k == null || flags == 0) // No modifier return k; SparseArray<KeyValue> ks = cacheEntry(k); KeyValue r = ks.get(flags); @@ -22,8 +22,10 @@ class KeyModifier return r; r = k; r = handleFn(r, flags); - r = handleShift(r, flags); - r = handleAccents(r, flags); + if (r != null) + r = handleShift(r, flags); + if (r != null) + r = handleAccents(r, flags); ks.put(flags, r); return r; } @@ -211,6 +213,7 @@ class KeyModifier case "#": name = "£"; break; case "*": name = "°"; break; case "tab": name = "\\t"; break; + case "€": case "£": return null; // Avoid showing these twice default: return k; } return KeyValue.getKeyByName(name); |
