abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/KeyboardData.java
diff options
context:
space:
mode:
authorJules Aguillon2022-01-10 00:27:22 +0100
committerJules Aguillon2022-01-10 00:27:22 +0100
commitdfec26a93be8cc3bf605273a49a46223e2551cde (patch)
treefd942a142fb5c84835079875092bc7cb95620bf8 /srcs/juloo.keyboard2/KeyboardData.java
parent53113cadd9654c827ae306905dae4d738dedf818 (diff)
downloadunexpected-keyboard-dfec26a93be8cc3bf605273a49a46223e2551cde.tar.gz
unexpected-keyboard-dfec26a93be8cc3bf605273a49a46223e2551cde.zip
Swap the Enter and Action keys when needed
When IME_FLAG_NO_ENTER_ACTION is set.
Diffstat (limited to 'srcs/juloo.keyboard2/KeyboardData.java')
-rw-r--r--srcs/juloo.keyboard2/KeyboardData.java26
1 files changed, 26 insertions, 0 deletions
diff --git a/srcs/juloo.keyboard2/KeyboardData.java b/srcs/juloo.keyboard2/KeyboardData.java
index 67b5db4..61a4ebf 100644
--- a/srcs/juloo.keyboard2/KeyboardData.java
+++ b/srcs/juloo.keyboard2/KeyboardData.java
@@ -201,4 +201,30 @@ class KeyboardData
return (k != null && k.eventCode == _eventCode) ? _replacement : k;
}
}
+
+ /* Replace two keys at the same time. Used for swaping keys. */
+ public static class ReplaceKeysByEvent2 implements MapKeys
+ {
+ private final int _e1;
+ private final KeyValue _r1;
+ private final int _e2;
+ private final KeyValue _r2;
+
+ public ReplaceKeysByEvent2(int e1, KeyValue r1, int e2, KeyValue r2)
+ {
+ _e1 = e1;
+ _r1 = r1;
+ _e2 = e2;
+ _r2 = r2;
+ }
+
+ public KeyValue map(KeyValue k)
+ {
+ if (k == null)
+ return null;
+ if (k.eventCode == _e1) return _r1;
+ if (k.eventCode == _e2) return _r2;
+ return k;
+ }
+ }
}