Support to send private command from IME to application 46/48646/1
authorJihoon Kim <jihoon48.kim@samsung.com>
Thu, 24 Sep 2015 06:13:06 +0000 (15:13 +0900)
committerJihoon Kim <jihoon48.kim@samsung.com>
Thu, 24 Sep 2015 06:13:06 +0000 (15:13 +0900)
Change-Id: Ide54c56d9b91635599ea44a35957cca647a985c7

src/e_mod_main.c

index eace3fdaca2d714d3034bdf6d2ea442b5ce52aff..0d809686879aa0bcc27c0bdc74a7dd6c9c9d62a3 100644 (file)
@@ -317,6 +317,24 @@ _e_text_input_method_context_cb_selection_region(struct wl_client *client EINA_U
                                          serial, start, end);
 }
 
+static void
+_e_text_input_method_context_cb_private_command(struct wl_client *client EINA_UNUSED, struct wl_resource *resource, uint32_t serial, const char *command)
+{
+   E_Input_Method_Context *context = wl_resource_get_user_data(resource);
+
+   if (!context)
+     {
+        wl_resource_post_error(resource,
+                               WL_DISPLAY_ERROR_INVALID_OBJECT,
+                               "No Input Method Context For Resource");
+        return;
+     }
+
+   if ((context->model) && (context->model->resource))
+     wl_text_input_send_private_command(context->model->resource,
+                                        serial, command);
+}
+
 static const struct wl_input_method_context_interface _e_text_input_method_context_implementation = {
      _e_text_input_method_context_cb_destroy,
      _e_text_input_method_context_cb_string_commit,
@@ -332,7 +350,8 @@ static const struct wl_input_method_context_interface _e_text_input_method_conte
      _e_text_input_method_context_cb_modifiers,
      _e_text_input_method_context_cb_language,
      _e_text_input_method_context_cb_text_direction,
-     _e_text_input_method_context_cb_selection_region
+     _e_text_input_method_context_cb_selection_region,
+     _e_text_input_method_context_cb_private_command
 };
 
 static void