From 086a3dae9c397e677e36bd84682a7ac5e827737a Mon Sep 17 00:00:00 2001 From: Ji-hoon Lee Date: Thu, 5 Dec 2019 21:48:04 +0900 Subject: [PATCH] Add PING message for flushing event queue Change-Id: I83fb805482376164da9b4853d960ee14e50688c4 --- .../panelagent/ecoresocket/ecore_socket_panel_agent_module.cpp | 8 ++++++++ ism/src/scim_helper.cpp | 6 ++++++ ism/src/scim_trans_commands.h | 2 ++ 3 files changed, 16 insertions(+) diff --git a/ism/modules/panelagent/ecoresocket/ecore_socket_panel_agent_module.cpp b/ism/modules/panelagent/ecoresocket/ecore_socket_panel_agent_module.cpp index 3d115a9..95ec262 100644 --- a/ism/modules/panelagent/ecoresocket/ecore_socket_panel_agent_module.cpp +++ b/ism/modules/panelagent/ecoresocket/ecore_socket_panel_agent_module.cpp @@ -2812,6 +2812,14 @@ private: m_info_manager->socket_helper_select_candidate(index); else LOGW ("wrong format of transaction"); + } else if (cmd == SCIM_TRANS_CMD_PING) { + Transaction trans; + Socket client_socket(client_id); + + trans.clear(); + trans.put_command(SCIM_TRANS_CMD_REPLY); + trans.put_command(SCIM_TRANS_CMD_OK); + trans.write_to_socket(client_socket); } else if (cmd == SCIM_TRANS_CMD_GET_SURROUNDING_TEXT) { String uuid; uint32 maxlen_before; diff --git a/ism/src/scim_helper.cpp b/ism/src/scim_helper.cpp index 0f63b24..73f5faa 100644 --- a/ism/src/scim_helper.cpp +++ b/ism/src/scim_helper.cpp @@ -2149,6 +2149,12 @@ HelperAgent::get_surrounding_text (int maxlen_before, int maxlen_after, String & free(m_impl->surrounding_text); m_impl->surrounding_text = NULL; } + + m_impl->send.clear (); + m_impl->send.put_command(SCIM_TRANS_CMD_REQUEST); + m_impl->send.put_data(m_impl->magic_active); + m_impl->send.put_command(SCIM_TRANS_CMD_PING); + m_impl->send.write_to_socket(m_impl->socket_active, m_impl->magic_active); } } diff --git a/ism/src/scim_trans_commands.h b/ism/src/scim_trans_commands.h index 7dbb3b9..22e4e55 100644 --- a/ism/src/scim_trans_commands.h +++ b/ism/src/scim_trans_commands.h @@ -533,6 +533,8 @@ const int SCIM_TRANS_CMD_GET_SELECTION = 174; const int SCIM_TRANS_CMD_SET_SELECTION = 175; const int SCIM_TRANS_CMD_SEND_PRIVATE_COMMAND = 176; const int SCIM_TRANS_CMD_COMMIT_CONTENT = 177; +const int SCIM_TRANS_CMD_PING = 178; + // Socket IMEngine to Socket FrontEnd const int SCIM_TRANS_CMD_NEW_INSTANCE = 200; -- 2.7.4