Postpone vc elm initialization 69/193969/3
authorHwankyu Jhun <h.jhun@samsung.com>
Wed, 28 Nov 2018 03:59:40 +0000 (12:59 +0900)
committerHwankyu Jhun <h.jhun@samsung.com>
Wed, 28 Nov 2018 04:09:36 +0000 (13:09 +0900)
Change-Id: I5919907076d53f57831b41740862491881b24531
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
src/efl_base/appcore_efl_base.c

index 676cb71..0e8dde5 100644 (file)
@@ -20,6 +20,7 @@
 #include <stdlib.h>
 #include <stdbool.h>
 #include <dlfcn.h>
+#include <glib.h>
 #include <Elementary.h>
 #include <vconf.h>
 
@@ -141,6 +142,14 @@ static void __vc_elm_finish(void)
        }
 }
 
+static gboolean __init_vc_elm(gpointer data)
+{
+       /* VC voice touch setting */
+       __vc_elm_init();
+
+       return G_SOURCE_REMOVE;
+}
+
 static void __efl_app_init(int argc, char **argv, void *data)
 {
        int hint;
@@ -164,15 +173,13 @@ static void __efl_app_init(int argc, char **argv, void *data)
                }
        }
 
-       /* VC voice touch setting */
-       if (!getenv("VC_ELM_INIT"))
-               __vc_elm_init();
+       /* Postpone initialization to improve app launching performance */
+       g_idle_add(__init_vc_elm, NULL);
 }
 
 static void __efl_app_finish(void)
 {
        __vc_elm_finish();
-       unsetenv("VC_ELM_INIT");
 
        elm_shutdown();