abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/KeyModifier.java
diff options
context:
space:
mode:
authorJules Aguillon2022-03-13 00:35:15 +0100
committerJules Aguillon2022-03-13 00:35:15 +0100
commita57bdf8cfb76e8680f77b95c1ad84f2e76e087a9 (patch)
tree1e405f348c895c20580162e0f328939e025e62b7 /srcs/juloo.keyboard2/KeyModifier.java
parentee6e892ef4b85d3f9e57f03efcbf971b6fb373b2 (diff)
downloadunexpected-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.java9
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);