Remake old APIs using new APIs
[platform/core/appfw/app-core.git] / src / ui_base / appcore_ui_base.c
index 7c4c63c..31da1ef 100644 (file)
@@ -511,23 +511,6 @@ EXPORT_API int appcore_ui_base_on_terminate(void)
        }
 
        __context.state = AS_DYING;
-       if (__context.hshow)
-               ecore_event_handler_del(__context.hshow);
-       if (__context.hhide)
-               ecore_event_handler_del(__context.hhide);
-       if (__context.hvchange)
-               ecore_event_handler_del(__context.hvchange);
-       if (__context.hlower)
-               ecore_event_handler_del(__context.hlower);
-
-       __finish_wl();
-       elm_shutdown();
-
-       /* Check loader case */
-       if (getenv("AUL_LOADER_INIT")) {
-               unsetenv("AUL_LOADER_INIT");
-               elm_shutdown();
-       }
 
        appcore_base_on_terminate();
 
@@ -555,10 +538,22 @@ EXPORT_API int appcore_ui_base_on_control(bundle *b)
 
 static void __group_attach()
 {
-       static bool attached = false;
+       if (!(__context.hint & APPCORE_UI_BASE_HINT_WINDOW_GROUP_CONTROL))
+               return;
+
+       appcore_ui_base_group_add();
+}
 
+static void __group_lower()
+{
        if (!(__context.hint & APPCORE_UI_BASE_HINT_WINDOW_GROUP_CONTROL))
                return;
+       appcore_ui_base_group_remove();
+}
+
+EXPORT_API void appcore_ui_base_group_add()
+{
+       static bool attached = false;
 
        _DBG("__group_attach");
        if (attached)
@@ -574,13 +569,10 @@ static void __group_attach()
        attached = true;
 }
 
-static void __group_lower()
+EXPORT_API void appcore_ui_base_group_remove()
 {
        int exit = 0;
 
-       if (!(__context.hint & APPCORE_UI_BASE_HINT_WINDOW_GROUP_CONTROL))
-               return;
-
        _DBG("__group_lower");
        aul_app_group_lower(&exit);
        if (exit) {
@@ -736,6 +728,25 @@ EXPORT_API int appcore_ui_base_init(appcore_ui_base_ops ops, int argc, char **ar
 EXPORT_API void appcore_ui_base_fini(void)
 {
        appcore_base_fini();
+
+       if (__context.hshow)
+               ecore_event_handler_del(__context.hshow);
+       if (__context.hhide)
+               ecore_event_handler_del(__context.hhide);
+       if (__context.hvchange)
+               ecore_event_handler_del(__context.hvchange);
+       if (__context.hlower)
+               ecore_event_handler_del(__context.hlower);
+
+       __finish_wl();
+       elm_shutdown();
+
+       /* Check loader case */
+       if (getenv("AUL_LOADER_INIT")) {
+               unsetenv("AUL_LOADER_INIT");
+               elm_shutdown();
+       }
+
        free(__context.appid);
        __context.appid = NULL;
 }
@@ -761,6 +772,16 @@ EXPORT_API void appcore_ui_base_exit(void)
                __context.ops.base.exit(__context.data);
 }
 
+EXPORT_API unsigned int appcore_ui_base_get_main_window(void)
+{
+       return __get_main_window();
+}
+
+EXPORT_API unsigned int appcore_ui_base_get_main_surface(void)
+{
+       return __get_main_surface();
+}
+
 static int __on_receive(aul_type type, bundle *b, void *data)
 {
        return appcore_ui_base_on_receive(type, b);