Add callback invocation test routine 84/152584/1
authorJi-hoon Lee <dalton.lee@samsung.com>
Tue, 26 Sep 2017 10:50:51 +0000 (19:50 +0900)
committerJi-hoon Lee <dalton.lee@samsung.com>
Tue, 26 Sep 2017 10:50:57 +0000 (19:50 +0900)
Change-Id: Iec29f965794abbfcdf13a3d06116d4d2d4495285

src/sclconnection-isf.cpp

index 2247668..9c3c48c 100644 (file)
@@ -1167,7 +1167,81 @@ void CSCLConnectionISF::set_selection(sclint start, sclint end)
 
 void CSCLConnectionISF::send_private_command(const sclchar *command)
 {
-    if (m_initialized) {
+    Eina_Bool tc_command = EINA_FALSE;
+    CSCLCoreImpl *impl = CSCLCoreImpl::get_instance();
+    ISCLCoreEventCallback *callback = NULL;
+    if (impl) {
+        callback = impl->get_core_event_callback();
+    }
+    if (command && callback) {
+        if (strcmp(command, "tizen::tc::test") == 0) {
+            static Ise_Context context;
+            static SclCandidateTable table;
+            static scim::KeyEvent key;
+            static sclu32 type;
+            static size_t len;
+
+            callback->on_attach_input_context(0, "");
+            callback->on_detach_input_context(0, "");
+            callback->on_reload_config(0, "");
+            callback->on_update_spot_location(0, "", 0, 0);
+            callback->on_update_cursor_position(0, "", 0);
+            callback->on_update_surrounding_text(0, NULL, 0);
+            callback->on_focus_out(0, "");
+            callback->on_focus_in(0, "");
+            callback->on_ise_show(0, 0, context);
+            callback->on_ise_hide(0, "");
+            callback->on_get_geometry(NULL, NULL, NULL, NULL);
+            callback->on_set_mode(0);
+            callback->on_set_language(0);
+            callback->on_set_imdata(NULL, 0);
+            callback->on_get_imdata(NULL, NULL);
+            callback->on_get_language_locale(0, NULL);
+            callback->on_set_return_key_type(0);
+            callback->on_get_return_key_type(NULL);
+            callback->on_set_return_key_disable(0);
+            callback->on_get_return_key_disable(NULL);
+            callback->on_set_layout(0);
+            callback->on_get_layout(NULL);
+            callback->on_set_caps_mode(0);
+            callback->on_reset_input_context(0, NULL);
+            callback->on_update_candidate_geometry(0, NULL, 0, 0, 0, 0);
+            callback->on_update_keyboard_ise(0, NULL, NULL, NULL);
+            callback->on_candidate_more_window_show(0, NULL);
+            callback->on_candidate_more_window_hide(0, NULL);
+            callback->on_select_aux(0, NULL, 0);
+            callback->on_select_candidate(0, NULL, 0);
+            callback->on_candidate_table_page_up(0, NULL);
+            callback->on_candidate_table_page_down(0, NULL);
+            callback->on_update_lookup_table(table);
+            callback->on_update_candidate_table_page_size(0, NULL, 0);
+            callback->on_select_associate(0, NULL, 0);
+            callback->on_associate_table_page_up(0, NULL);
+            callback->on_associate_table_page_down(0, NULL);
+            callback->on_update_associate_table_page_size(0, NULL, 0);
+            callback->on_process_key_event(key, NULL);
+
+            callback->on_set_display_language(NULL);
+            callback->on_set_rotation_degree(0);
+            callback->on_set_accessibility_state(FALSE);
+
+            callback->on_create_option_window(SCLWINDOW_INVALID, OPTION_WINDOW_TYPE_NORMAL);
+            callback->on_destroy_option_window(SCLWINDOW_INVALID);
+            callback->on_check_option_window_availability(NULL);
+
+            callback->on_candidate_show(0, "");
+            callback->on_candidate_hide(0, "");
+
+            callback->on_process_input_device_event(type, NULL, len, NULL);
+
+            callback->on_set_prediction_hint(NULL);
+            callback->on_set_mime_type(NULL);
+
+            tc_command = EINA_TRUE;
+        }
+    }
+
+    if (m_initialized && !tc_command) {
         m_helper_agent.send_private_command(command);
     }
 }