return EINA_TRUE;
}
+
+/* check whether the keyboard effect is running or not
+ - 0 : effect is not running,
+ - otherwise : effect is running */
+int e_input_panel_is_effect_running(void)
+{
+ E_Input_Panel_Surface *ips = NULL;
+ Eina_List *l = NULL;
+ int run_type = 0;
+
+ EINA_LIST_FOREACH(g_input_panel->surfaces, l, ips)
+ {
+ if (!ips || !ips->ec) continue;
+ if (_e_input_panel_is_effect_running(ips->ec))
+ {
+ /*
+ Do we need to check currently effect type?
+ then what flag do we check? ips->ec->visible or ips->showing?
+ */
+ if (ips->ec->visible)
+ run_type = 1; // show effect is running
+ else
+ run_type = 2; // hide effect is running
+
+ break;
+ }
+ }
+
+ return run_type;
+}
Eina_Bool _context_created = EINA_FALSE;
E_Zone *zone = NULL;
double timeout;
+ int effect_run;
if (!text_input)
{
}
zone = e_zone_current_get();
+ effect_run = e_input_panel_is_effect_running();
if (zone && (zone->display_state == E_ZONE_DISPLAY_STATE_OFF))
timeout = 0.0f;
+ else if (effect_run)
+ timeout = 0.0f;
else
timeout = WILL_HIDE_TIMER_INTERVAL;
g_timer_will_hide = ecore_timer_add(timeout, _will_hide_timer_handler, NULL);
void e_input_panel_floating_position_set(int x, int y);
void e_text_input_update_input_panel_state(Eina_Bool state);
Eina_Bool e_input_panel_surface_destroy(E_Client *ec);
+int e_input_panel_is_effect_running(void);
typedef enum {
TIZEN_PROFILE_UNKNOWN = 0,