X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fwidget_app.c;h=4c20c2ce62b361773cf33b86db07fb2e2d6ef690;hb=f42c993425ba9047016c56762e84ddf1ac28692c;hp=3840ac29fd926ab3506fefde4c57d16699b59362;hpb=7f8984e3e6a2c5e57b4276fd35108af79940e605;p=platform%2Fcore%2Fappfw%2Fappcore-widget.git diff --git a/src/widget_app.c b/src/widget_app.c index 3840ac2..4c20c2c 100755 --- a/src/widget_app.c +++ b/src/widget_app.c @@ -614,6 +614,33 @@ static int __widget_app_receive(aul_type type, bundle *b, void *data) return 0; } +static int __widget_app_init(int argc, char **argv, void *data) +{ + elm_init(argc, argv); + return 0; +} + +static void __widget_app_finish(void) +{ + elm_shutdown(); + + /* Check Loader case */ + if (getenv("AUL_LOADER_INIT")) { + unsetenv("AUL_LOADER_INIT"); + elm_shutdown(); + } +} + +static void __widget_app_run(void *data) +{ + elm_run(); +} + +static void __widget_app_exit(void *data) +{ + elm_exit(); +} + EXPORT_API int widget_app_main(int argc, char **argv, widget_app_lifecycle_callback_s *callback, void *user_data) { @@ -647,6 +674,11 @@ EXPORT_API int widget_app_main(int argc, char **argv, ops.base.control = __widget_app_control; ops.base.terminate = __widget_app_terminate; ops.base.receive = __widget_app_receive; + ops.base.init = __widget_app_init; + ops.base.finish = __widget_app_finish; + ops.base.run = __widget_app_run; + ops.base.exit = __widget_app_exit; + __context.callback = *callback; __context.data = user_data; kb = bundle_import_from_argv(argc, argv); @@ -929,7 +961,7 @@ EXPORT_API int widget_app_get_elm_win(widget_context_h context, snprintf(buffer, sizeof(buffer), "%s:%d", id, getpid()); evas_object_data_set(ret_win, "___PLUGID", strdup(buffer)); evas_object_event_callback_add(ret_win, EVAS_CALLBACK_DEL, __win_del_cb, NULL); - appcore_multiwindow_base_window_bind(cxt, ret_win); + appcore_multiwindow_base_window_bind(cxt, wl_win); _D("window created: %d", win_id);