From dc3a303af1ef72602b58292e5cc938944d6954ba Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Mon, 18 Mar 2024 00:14:19 +0100 Subject: 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. --- srcs/juloo.keyboard2/KeyModifier.java | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'srcs/juloo.keyboard2/KeyModifier.java') 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) -- cgit v1.2.3