Eina_List *input_methods;
Eina_Bool input_panel_visible;
+ Eina_Bool input_panel_show_requested;
uint32_t id;
};
if (val == false)
{
- if (!g_disable_show_panel && g_text_input && g_text_input->resource && g_client && g_input_panel_state == E_INPUT_PANEL_STATE_DID_HIDE && g_input_panel_enabled)
+ if (!g_disable_show_panel && g_text_input && g_text_input->resource && g_client && g_input_panel_state == E_INPUT_PANEL_STATE_DID_HIDE && g_text_input->input_panel_show_requested)
_e_text_input_cb_input_panel_show(g_client, g_text_input->resource);
#ifdef SUPPORT_CANDIDATE_ONEWINDOW
if (input_method->context) input_method->context->input = NULL;
input_method->context = NULL;
+ text_input->input_panel_show_requested = EINA_FALSE;
text_input->input_methods = eina_list_remove(text_input->input_methods, input_method);
if (text_input->resource)
return;
}
+ text_input->input_panel_show_requested = EINA_TRUE;
+
#ifndef SUPPORT_CANDIDATE_ONEWINDOW
if (g_disable_show_panel == EINA_TRUE)
return;