static Evas_Object *__conform;
static int __type;
-static bool __vc_elm_initialized;
-static void *__vc_elm_handle;
-static int (*__vc_elm_initialize)(void);
-static int (*__vc_elm_deinitialize)(void);
-static int (*__vc_elm_set_auto_register_mode)(int, int);
-
-
enum loader_type {
TYPE_COMMON,
TYPE_SW,
}
}
-static void __unload_vc_elm(void)
-{
- if (!__vc_elm_handle)
- return;
-
- __vc_elm_initialize = NULL;
- __vc_elm_deinitialize = NULL;
- __vc_elm_set_auto_register_mode = NULL;
-
- dlclose(__vc_elm_handle);
- __vc_elm_handle = NULL;
-}
-
-static int __load_vc_elm(void)
-{
- if (__vc_elm_handle)
- return 0;
-
- if (access(PATH_LIB_VC_ELM, F_OK) != 0) {
- _W("Failed to access %s", PATH_LIB_VC_ELM);
- return -1;
- }
-
- __vc_elm_handle = dlopen(PATH_LIB_VC_ELM, RTLD_LAZY | RTLD_GLOBAL);
- if (!__vc_elm_handle) {
- _E("Failed to open %s", PATH_LIB_VC_ELM);
- return -1;
- }
-
- __vc_elm_initialize = dlsym(__vc_elm_handle, "vc_elm_initialize");
- if (!__vc_elm_initialize) {
- _E("Failed to load vc_elm_initialize");
- __unload_vc_elm();
- return -1;
- }
-
- __vc_elm_deinitialize = dlsym(__vc_elm_handle, "vc_elm_deinitialize");
- if (!__vc_elm_deinitialize) {
- _E("Failed to load vc_elm_deinitialize");
- __unload_vc_elm();
- return -1;
- }
-
- __vc_elm_set_auto_register_mode = dlsym(__vc_elm_handle,
- "vc_elm_set_auto_register_mode");
- if (!__vc_elm_set_auto_register_mode) {
- _E("Failed to load vc_elm_set_auto_register_mode");
- __unload_vc_elm();
- return -1;
- }
-
- return 0;
-}
-
-static void __vc_vtauto_changed_cb(keynode_t *key, void *data)
-{
- const char *name;
- int vt_automode;
-
- name = vconf_keynode_get_name(key);
- if (!name || strcmp(name, VCONFKEY_VC_VOICE_TOUCH_AUTOMODE) != 0)
- return;
-
- vt_automode = vconf_keynode_get_bool(key);
- if (vt_automode) {
- if (!__vc_elm_initialized) {
- __vc_elm_initialize();
- __vc_elm_initialized = true;
- }
- __vc_elm_set_auto_register_mode(2, 0);
- } else {
- __vc_elm_deinitialize();
- __vc_elm_initialized = false;
- }
-}
-
-static void __vc_elm_init(void)
-{
- int vt_automode = 0;
- int r;
-
- r = __load_vc_elm();
- if (r < 0)
- return;
-
- vconf_notify_key_changed(VCONFKEY_VC_VOICE_TOUCH_AUTOMODE,
- __vc_vtauto_changed_cb, NULL);
- vconf_get_bool(VCONFKEY_VC_VOICE_TOUCH_AUTOMODE, &vt_automode);
- if (vt_automode) {
- if (!__vc_elm_initialized) {
- __vc_elm_initialize();
- __vc_elm_initialized = true;
- }
- __vc_elm_set_auto_register_mode(2, 0);
- }
-
- setenv("VC_ELM_INIT", "1", 1);
-}
-
static void __preload_lib(bundle *b)
{
void *handle = NULL;
break;
}
- __vc_elm_init();
-
ret = vconf_get_int(VCONFKEY_SETAPPL_APP_HW_ACCELERATION, &__sys_hwacc);
if (ret != VCONF_OK) {
_E("Failed to get vconf int: %s",