From 31d6a70dfb9c7ad3a72302bca2339f926e4593ee Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Mon, 6 Jun 2022 00:23:45 +0200 Subject: Refactor: Remove KeyValue.name This makes KeyValue objects smaller. 'equals' and 'hashCode' are now implemented too. Key names are still used to recognise keys with special meaning, but not for comparing keys anymore. --- srcs/juloo.keyboard2/Pointers.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'srcs/juloo.keyboard2/Pointers.java') diff --git a/srcs/juloo.keyboard2/Pointers.java b/srcs/juloo.keyboard2/Pointers.java index 7ef714b..0548b88 100644 --- a/srcs/juloo.keyboard2/Pointers.java +++ b/srcs/juloo.keyboard2/Pointers.java @@ -68,11 +68,8 @@ public final class Pointers implements Handler.Callback */ public int getKeyFlags(KeyValue kv) { - // Comparing names because the keys might have been modified. - // Physical equality works because names are never computed or shared. - String name = kv.name; for (Pointer p : _ptrs) - if (p.value != null && p.value.name == name) + if (p.value != null && p.value.equals(kv)) return p.flags; return -1; } @@ -214,7 +211,7 @@ public final class Pointers implements Handler.Callback { ptr.selected_direction = direction; KeyValue newValue = getKeyAtDirection(ptr, direction); - if (newValue != null && (ptr.value == null || newValue.name != ptr.value.name)) + if (newValue != null && (ptr.value == null || !newValue.equals(ptr.value))) { int old_flags = ptr.flags; ptr.value = newValue; @@ -253,7 +250,7 @@ public final class Pointers implements Handler.Callback if (v == null) return null; for (Pointer p : _ptrs) - if (p.key == k && p.pointerId == -1 && p.value != null && p.value.name == v.name) + if (p.key == k && p.pointerId == -1 && p.value != null && p.value.equals(v)) return p; return null; } -- cgit v1.2.3