From 2914d6e8dd1f87ad4c701ed8f192ea2740b999bc Mon Sep 17 00:00:00 2001 From: "moon87.park" Date: Fri, 25 Mar 2016 16:57:25 +0900 Subject: [PATCH] [Widget-viewer-evas] Add the WIDGET_CREATED_CALLBACK Change-Id: I13ceb46091752075e9394c80f2c0a13892bf06d1 --- widget_viewer_evas/src/widget_viewer_evas.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/widget_viewer_evas/src/widget_viewer_evas.c b/widget_viewer_evas/src/widget_viewer_evas.c index 94682b4..47ff328 100644 --- a/widget_viewer_evas/src/widget_viewer_evas.c +++ b/widget_viewer_evas/src/widget_viewer_evas.c @@ -167,9 +167,20 @@ static inline bool is_widget_feature_enabled(void) return feature; } +static void smart_callback_call(Evas_Object *obj, const char *signal, void *cbdata) +{ + if (!obj) { + DbgPrint("widget is deleted, ignore smart callback call\n"); + return; + } + evas_object_smart_callback_call(obj, signal, cbdata); +} + + static void widget_added_cb(const char *instance_id, Evas_Object *obj, void *data) { struct widget_info *info; + struct widget_evas_event_info event_info; Evas_Object *surface; surface = obj; @@ -191,6 +202,12 @@ static void widget_added_cb(const char *instance_id, Evas_Object *obj, void *dat * It will be automatically resized by EDJE. */ elm_object_part_content_set(info->layout, "pepper,widget", surface); + + event_info.error = WIDGET_ERROR_NONE; + event_info.widget_app_id = info->widget_id; + event_info.event = WIDGET_EVENT_CREATED; + + smart_callback_call(info->layout, WIDGET_SMART_SIGNAL_WIDGET_CREATED, &event_info); } EAPI int widget_viewer_evas_init(Evas_Object *win) -- 2.7.4