diff options
| author | Jules Aguillon | 2021-04-13 02:00:08 +0200 |
|---|---|---|
| committer | Jules Aguillon | 2021-04-13 02:00:08 +0200 |
| commit | eac74d3f2283ec9f36e595261ab21716d910c15a (patch) | |
| tree | 12adc9bf71a1306249919372202af5fdd3596ea5 /srcs/juloo.keyboard2/KeyboardData.java | |
| parent | 0b1befcc8802331b15389509e77f723d992861ee (diff) | |
| download | unexpected-keyboard-eac74d3f2283ec9f36e595261ab21716d910c15a.tar.gz unexpected-keyboard-eac74d3f2283ec9f36e595261ab21716d910c15a.zip | |
Add an option to toggle accent keys
These keys are not useful at all in English. A new option allows to hide
them, [false] by default.
Diffstat (limited to 'srcs/juloo.keyboard2/KeyboardData.java')
| -rw-r--r-- | srcs/juloo.keyboard2/KeyboardData.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/srcs/juloo.keyboard2/KeyboardData.java b/srcs/juloo.keyboard2/KeyboardData.java index 0b73b3d..b52a172 100644 --- a/srcs/juloo.keyboard2/KeyboardData.java +++ b/srcs/juloo.keyboard2/KeyboardData.java @@ -43,6 +43,27 @@ class KeyboardData return (_rows); } + // Remove every keys that has the given flags. + public void removeKeysByFlag(int flags) + { + for (Row r : _rows) + { + for (Key k : r) + { + k.key0 = _removeKeyValueFlag(k.key0, flags); + k.key1 = _removeKeyValueFlag(k.key1, flags); + k.key2 = _removeKeyValueFlag(k.key2, flags); + k.key3 = _removeKeyValueFlag(k.key3, flags); + k.key4 = _removeKeyValueFlag(k.key4, flags); + } + } + } + + private KeyValue _removeKeyValueFlag(KeyValue v, int flags) + { + return (v != null && (v.getFlags() & flags) != 0) ? null : v; + } + public class Row extends ArrayList<Key> { private float _keysWidth; |
