static Eina_Bool g_keyboard_mode_engligh = EINA_TRUE;
static Ecore_Timer *g_timer_will_hide = NULL;
static enum _E_Input_Panel_State g_input_panel_state = E_INPUT_PANEL_STATE_DID_HIDE;
+#ifndef _TV
static Eina_List *hooks_ec = NULL;
static E_Client *transient_for_ec = NULL;
+#endif
const int WILL_HIDE_TIMER_INTERVAL = 1.0f;
+#ifndef _TV
#undef E_CLIENT_HOOK_APPEND
#define E_CLIENT_HOOK_APPEND(l, t, cb, d) \
do \
l = eina_list_append(l, _h); \
} \
while (0)
+#endif
static struct _E_Input_Method_Keymap_Info g_keymap_info[] = {
{"en_US", "evdev", "pc105", "us"},
EINA_SAFETY_ON_NULL_GOTO(g_input_method, err);
EINA_SAFETY_ON_NULL_GOTO(g_input_method->resource, err);
+#ifndef _TV
/* Store application window's E_Client* value for setting transient_for information later */
E_Client *ec = wl_resource_get_user_data(surface);
EINA_SAFETY_ON_NULL_GOTO(ec, err);
transient_for_ec = ec;
e_input_panel_transient_for_set(transient_for_ec);
WTI_LOG("TRANSIENT_FOR::Application window's E_Client* value : %p\n", transient_for_ec);
+#endif
text_input = wl_resource_get_user_data(resource);
g_text_input = text_input;
if (text_input->resource)
wl_text_input_send_input_panel_state(text_input->resource,
WL_TEXT_INPUT_INPUT_PANEL_STATE_SHOW);
-
+#ifndef _TV
e_input_panel_transient_for_set(transient_for_ec);
+#endif
}
static void
_e_text_input_cb_input_panel_hide(struct wl_client *client, struct wl_resource *resource)
{
_input_panel_hide(client, resource, EINA_FALSE);
+#ifndef _TV
e_input_panel_transient_for_set(NULL);
+#endif
}
static void
return ECORE_CALLBACK_PASS_ON;
}
+#ifndef _TV
static void
_pol_cb_hook_client_del(void *d EINA_UNUSED, E_Client *ec)
{
WTI_LOG("TRANSIENT_FOR::Reset transient_for_ec to NULL\n");
}
}
+#endif
E_API void *
e_modapi_init(E_Module *m)
if (!eeze_udev_watch_hander)
goto err;
+#ifndef _TV
E_CLIENT_HOOK_APPEND(hooks_ec, E_CLIENT_HOOK_DEL, _pol_cb_hook_client_del, NULL);
+#endif
return m;
err:
e_modapi_shutdown(E_Module *m EINA_UNUSED)
{
E_FREE_LIST(handlers, ecore_event_handler_del);
+#ifndef _TV
E_FREE_LIST(hooks_ec, e_client_hook_del);
+#endif
if (g_timer_will_hide)
{