diff options
| author | Jules Aguillon | 2022-03-19 15:39:20 +0100 |
|---|---|---|
| committer | Jules Aguillon | 2022-03-19 15:39:20 +0100 |
| commit | e872c5878874bdd035b9ca870853068a53cfc002 (patch) | |
| tree | f387e240310c86d33deb4a61976e8bef41255941 /srcs/juloo.keyboard2/Keyboard2View.java | |
| parent | 57c6208b50ac0959911a1966187c9bb036bd40a9 (diff) | |
| download | unexpected-keyboard-e872c5878874bdd035b9ca870853068a53cfc002.tar.gz unexpected-keyboard-e872c5878874bdd035b9ca870853068a53cfc002.zip | |
Allow modifiers to hide keys
Modifiers can temporarily remove a key from the layout by returning
'null'.
Make sure pointer handling code handle these modified keys gracefully
and doesn't trigger a key event and a vibration for the removed key.
Diffstat (limited to 'srcs/juloo.keyboard2/Keyboard2View.java')
| -rw-r--r-- | srcs/juloo.keyboard2/Keyboard2View.java | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/srcs/juloo.keyboard2/Keyboard2View.java b/srcs/juloo.keyboard2/Keyboard2View.java index a6ab99c..11cf970 100644 --- a/srcs/juloo.keyboard2/Keyboard2View.java +++ b/srcs/juloo.keyboard2/Keyboard2View.java @@ -67,26 +67,27 @@ public class Keyboard2View extends View invalidate(); } - public void onPointerDown(KeyValue k) + public KeyValue onPointerDown(KeyValue k) { - updateFlags(); + k = KeyModifier.handleFlags(k, _flags); invalidate(); if (k != null) vibrate(); + return k; } - public void onPointerSwipe(KeyValue k) + public KeyValue onPointerSwipe(KeyValue k) { - updateFlags(); + k = KeyModifier.handleFlags(k, _flags); invalidate(); if (k != null) vibrate(); + return k; } public void onPointerUp(KeyValue k) { _config.handler.handleKeyUp(k, _flags); - updateFlags(); invalidate(); } @@ -97,7 +98,6 @@ public class Keyboard2View extends View public void onPointerFlagsChanged() { - updateFlags(); invalidate(); } @@ -202,6 +202,7 @@ public class Keyboard2View extends View @Override protected void onDraw(Canvas canvas) { + updateFlags(); float y = _config.marginTop + _config.keyVerticalInterval / 2; for (KeyboardData.Row row : _keyboard.rows) { |
