diff options
| author | Jules Aguillon | 2022-06-05 01:38:42 +0200 |
|---|---|---|
| committer | Jules Aguillon | 2022-06-05 01:43:58 +0200 |
| commit | 4127aa6f033a258aa89ff3704a952505c8c056cb (patch) | |
| tree | 5a1dcada711e1ed85c28d626abf0b2e484f7fcff /srcs/juloo.keyboard2/Keyboard2View.java | |
| parent | 4f9375373e3ce9514550fa0470b40ae7f0ff19b2 (diff) | |
| download | unexpected-keyboard-4127aa6f033a258aa89ff3704a952505c8c056cb.tar.gz unexpected-keyboard-4127aa6f033a258aa89ff3704a952505c8c056cb.zip | |
Stop using flags for modifiers
There was no free bits left to add new modifiers. Instead of increasing
the width of the 'flags' field, refactor the way modifiers are
represented and used.
Modifers are now represented as independent values and stored in the
'code' field. A flag is added to distinguish between modifiers and keys
with a key event.
The most notable change is that modifiers can no longer be or-ed into a
single value but have to be represented as an array.
Diffstat (limited to 'srcs/juloo.keyboard2/Keyboard2View.java')
| -rw-r--r-- | srcs/juloo.keyboard2/Keyboard2View.java | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/srcs/juloo.keyboard2/Keyboard2View.java b/srcs/juloo.keyboard2/Keyboard2View.java index c0743bc..4863600 100644 --- a/srcs/juloo.keyboard2/Keyboard2View.java +++ b/srcs/juloo.keyboard2/Keyboard2View.java @@ -24,7 +24,7 @@ public class Keyboard2View extends View private Pointers _pointers; - private int _flags = 0; + private Pointers.Modifiers _mods; private Vibrator _vibratorService; private long _lastVibration = 0; @@ -90,15 +90,15 @@ public class Keyboard2View extends View public void reset() { - _flags = 0; + _mods = Pointers.Modifiers.EMPTY; _pointers.clear(); requestLayout(); invalidate(); } - public KeyValue modifyKey(KeyValue k, int flags) + public KeyValue modifyKey(KeyValue k, Pointers.Modifiers mods) { - return KeyModifier.handleFlags(k, flags); + return KeyModifier.modify(k, mods); } public void onPointerDown(boolean isSwipe) @@ -107,15 +107,15 @@ public class Keyboard2View extends View vibrate(); } - public void onPointerUp(KeyValue k, int flags) + public void onPointerUp(KeyValue k, Pointers.Modifiers mods) { - _config.handler.handleKeyUp(k, flags); + _config.handler.handleKeyUp(k, mods); invalidate(); } - public void onPointerHold(KeyValue k, int flags) + public void onPointerHold(KeyValue k, Pointers.Modifiers mods) { - _config.handler.handleKeyUp(k, flags); + _config.handler.handleKeyUp(k, mods); } public void onPointerFlagsChanged() @@ -125,7 +125,7 @@ public class Keyboard2View extends View private void updateFlags() { - _flags = _pointers.getFlags(); + _mods = _pointers.getModifiers(); } @Override @@ -284,7 +284,7 @@ public class Keyboard2View extends View private void drawLabel(Canvas canvas, KeyValue k, float x, float y, float keyH, boolean isKeyDown) { - k = KeyModifier.handleFlags(k, _flags); + k = KeyModifier.modify(k, _mods); if (k == null) return; float textSize = scaleTextSize(k, _config.labelTextSize, keyH); @@ -296,7 +296,7 @@ public class Keyboard2View extends View private void drawSubLabel(Canvas canvas, KeyValue k, float x, float y, float keyW, float keyH, Paint.Align a, Vertical v, boolean isKeyDown) { - k = KeyModifier.handleFlags(k, _flags); + k = KeyModifier.modify(k, _mods); if (k == null) return; float textSize = scaleTextSize(k, _config.sublabelTextSize, keyH); |
