summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTetsui Ohkubo <tetsui@google.com>2019-01-11 16:05:55 +0900
committerTetsui Ohkubo <tetsui@google.com>2019-01-17 13:37:31 +0900
commit3725e64ea373aeebbe66a9a0d9f10f0e7c51ae94 (patch)
tree14dada9bf04dbc5fd9155ddf8fae65f1e11e4395
parent07a2b02ae8789aa8acc16c5ca40c1650963691c2 (diff)
downloadwayland-protocols-3725e64ea373aeebbe66a9a0d9f10f0e7c51ae94.tar.gz
StaticKCM: Add KEY_CHARACTER_MAP_NAME.
This CL adds KEY_CHARACTER_MAP_NAME to ArcInputBridgeProtocol. Currently KeyCharacterMap is dynamically generated at runtime. StaticKCM will change this to use statically genearted KCM files. Design doc: go/arc-static-kcm-converter Test: None Bug: 122704772 Change-Id: Ibd7cf107b9cbd33a6f6581681a1c60f3cdeb1cca
-rw-r--r--flinger_headers/ArcInputBridgeProtocol.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/flinger_headers/ArcInputBridgeProtocol.h b/flinger_headers/ArcInputBridgeProtocol.h
index f87cd63..5f8d57e 100644
--- a/flinger_headers/ArcInputBridgeProtocol.h
+++ b/flinger_headers/ArcInputBridgeProtocol.h
@@ -85,7 +85,8 @@ enum class InputEventType {
KEY_CHARACTER_MAP_CLEAR,
KEY_CHARACTER_MAP_ENTRY,
- KEY_CHARACTER_MAP_COMMIT
+ KEY_CHARACTER_MAP_COMMIT,
+ KEY_CHARACTER_MAP_NAME,
} __attribute__((packed));
struct PointerArgs {
@@ -181,6 +182,13 @@ struct KeyCharacterMapEntryArgs {
uint32_t capslock_ralt;
} __attribute__((packed));
+struct KeyCharacterMapNameArgs {
+ // XKB layout name. The longest one we have is "us(workman-intl)" (16
+ // characters) so it should be sufficient. KCM converter will also check the
+ // name doesn't exceed the limit at build time.
+ char name[32];
+} __attribute__((packed));
+
struct RelativePointerArgs {
float dx;
float dy;
@@ -208,6 +216,7 @@ struct BridgeInputEvent {
SwitchArgs switches;
DisplayMetricsArgs display_metrics;
KeyCharacterMapEntryArgs key_character_map_entry;
+ KeyCharacterMapNameArgs key_character_map_name;
RelativePointerArgs relativePointer;
};