text: Rename and extend text_model key event
Rename the key event in text_model to keysym and add serial, time and
modifiers arguments. Add a modifiers_map event to transfer an array of
0-terminated modifier names, so that a mapping of modifiers to the
modifier bit mask is possible.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
diff --git a/src/text-backend.c b/src/text-backend.c
index ae1f16c..ece89bb 100644
--- a/src/text-backend.c
+++ b/src/text-backend.c
@@ -350,14 +350,28 @@
}
static void
-input_method_context_key(struct wl_client *client,
- struct wl_resource *resource,
- uint32_t key,
- uint32_t state)
+input_method_context_modifiers_map(struct wl_client *client,
+ struct wl_resource *resource,
+ struct wl_array *map)
{
struct input_method_context *context = resource->data;
- text_model_send_key(&context->model->resource, key, state);
+ text_model_send_modifiers_map(&context->model->resource, map);
+}
+
+static void
+input_method_context_keysym(struct wl_client *client,
+ struct wl_resource *resource,
+ uint32_t serial,
+ uint32_t time,
+ uint32_t sym,
+ uint32_t state,
+ uint32_t modifiers)
+{
+ struct input_method_context *context = resource->data;
+
+ text_model_send_keysym(&context->model->resource, serial, time,
+ sym, state, modifiers);
}
static const struct input_method_context_interface input_method_context_implementation = {
@@ -365,7 +379,8 @@
input_method_context_commit_string,
input_method_context_preedit_string,
input_method_context_delete_surrounding_text,
- input_method_context_key
+ input_method_context_modifiers_map,
+ input_method_context_keysym
};
static void