diff options
| author | Jules Aguillon | 2024-03-18 00:14:19 +0100 |
|---|---|---|
| committer | Jules Aguillon | 2024-03-18 00:40:15 +0100 |
| commit | dc3a303af1ef72602b58292e5cc938944d6954ba (patch) | |
| tree | 7bfdb51a267d684bd57fcf3b21f917cff3aa3536 /srcs/juloo.keyboard2/KeyModifier.java | |
| parent | ec8e78d5cc8a7d3c4d1929761bd80806b1d5e7c8 (diff) | |
| download | unexpected-keyboard-dc3a303af1ef72602b58292e5cc938944d6954ba.tar.gz unexpected-keyboard-dc3a303af1ef72602b58292e5cc938944d6954ba.zip | |
refactor: Allow modifier of other key kinds
Allow keys of a kind other than Modifier to be a modifier.
This requires writing a compareTo function for KeyValue. Fields are
compared in this order: Kind, value, flags, symbol.
Diffstat (limited to 'srcs/juloo.keyboard2/KeyModifier.java')
| -rw-r--r-- | srcs/juloo.keyboard2/KeyModifier.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/srcs/juloo.keyboard2/KeyModifier.java b/srcs/juloo.keyboard2/KeyModifier.java index 146c1bd..a3c499b 100644 --- a/srcs/juloo.keyboard2/KeyModifier.java +++ b/srcs/juloo.keyboard2/KeyModifier.java @@ -38,6 +38,16 @@ public final class KeyModifier return r; } + public static KeyValue modify(KeyValue k, KeyValue mod) + { + switch (mod.getKind()) + { + case Modifier: + return modify(k, mod.getModifier()); + } + return k; + } + public static KeyValue modify(KeyValue k, KeyValue.Modifier mod) { switch (mod) |
