summaryrefslogtreecommitdiff
path: root/ism
diff options
context:
space:
mode:
authorSungmin Kwak <sungmin.kwak@samsung.com>2019-06-27 23:32:17 +0000
committerSungmin Kwak <sungmin.kwak@samsung.com>2019-06-28 08:44:14 +0900
commit2b3501e2ef98b30c37f782eab5f3f89b4c4590d5 (patch)
tree4a865dcad32ce9cf63bf6037b0b3178be65e664c /ism
parent210f4f2ad47489cf3c7fed7c90a1dc07cc1351d2 (diff)
downloadisf-2b3501e2ef98b30c37f782eab5f3f89b4c4590d5.tar.gz
isf-2b3501e2ef98b30c37f782eab5f3f89b4c4590d5.tar.bz2
isf-2b3501e2ef98b30c37f782eab5f3f89b4c4590d5.zip
Revert "Fix a problem that ENTRY_METADATA event is not called"
This reverts commit cc76ac9cadb8661c99517b435bc66df98857cbd8. Change-Id: I5ccc0447ddcfde0c13ddd703d53dcaa0e0c6ae00
Diffstat (limited to 'ism')
-rw-r--r--ism/modules/panelagent/wayland/isf_wsc_context.h2
-rw-r--r--ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp4
2 files changed, 5 insertions, 1 deletions
diff --git a/ism/modules/panelagent/wayland/isf_wsc_context.h b/ism/modules/panelagent/wayland/isf_wsc_context.h
index 0c270e02..04df1d31 100644
--- a/ism/modules/panelagent/wayland/isf_wsc_context.h
+++ b/ism/modules/panelagent/wayland/isf_wsc_context.h
@@ -113,6 +113,7 @@ struct _WSCContextISF {
Eina_Bool language_initialized;
Eina_Bool return_key_disabled;
+ Eina_Bool input_panel_shown;
WSCContextISFImpl *impl;
@@ -141,6 +142,7 @@ struct _WSCContextISF {
autocapital_type_initialized(EINA_FALSE),
language_initialized(EINA_FALSE),
return_key_disabled(EINA_FALSE),
+ input_panel_shown(EINA_FALSE),
impl(NULL),
id(0),
next(NULL)
diff --git a/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp b/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp
index cb2d3aa1..a0fc1a17 100644
--- a/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp
+++ b/ism/modules/panelagent/wayland/wayland_panel_agent_module.cpp
@@ -886,6 +886,7 @@ _wsc_im_show_input_panel (void *data, struct wl_input_method *input_method, stru
if (!wsc || !wsc->wsc_ctx) return;
isf_wsc_context_input_panel_show (wsc->wsc_ctx);
+ wsc->wsc_ctx->input_panel_shown = true;
if (_TV)
remote_surrounding_get (wsc->wsc_ctx);
@@ -898,6 +899,7 @@ _wsc_im_hide_input_panel (void *data, struct wl_input_method *input_method, stru
if (!wsc || !wsc->wsc_ctx) return;
isf_wsc_context_input_panel_hide (wsc->wsc_ctx);
+ wsc->wsc_ctx->input_panel_shown = false;
}
static const struct wl_input_method_listener wsc_im_listener = {
@@ -1564,7 +1566,7 @@ isf_wsc_context_send_surrounding_text (WSCContextISF* wsc_ctx, const char *text,
context_scim->impl->cursor_pos = cursor;
if (_TV) {
- if (context_scim->impl->input_resource != INPUT_RESOURCE_REMOTE) {
+ if (context_scim->input_panel_shown && context_scim->impl->input_resource != INPUT_RESOURCE_REMOTE) {
if (context_scim->impl->panel_layout == ECORE_IMF_INPUT_PANEL_LAYOUT_PASSWORD) {
g_info_manager->remoteinput_callback_surrounding_text (String (""), 0);
}