[Widget-viewer-evas] Add the WIDGET_CREATED_CALLBACK 91/63691/1 accepted/tizen/ivi/20160325.134440 accepted/tizen/mobile/20160325.134343 accepted/tizen/tv/20160325.134306 accepted/tizen/wearable/20160325.134359 submit/tizen/20160325.115049
authormoon87.park <moon87.park@samsung.com>
Fri, 25 Mar 2016 07:57:25 +0000 (16:57 +0900)
committermoon87.park <moon87.park@samsung.com>
Fri, 25 Mar 2016 07:57:25 +0000 (16:57 +0900)
Change-Id: I13ceb46091752075e9394c80f2c0a13892bf06d1

widget_viewer_evas/src/widget_viewer_evas.c

index 94682b4..47ff328 100644 (file)
@@ -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)