[Check] send signal when animation is finished
authorSung-Taek Hong <sth253.hong@samsung.com>
Mon, 31 Aug 2015 10:30:53 +0000 (19:30 +0900)
committerJaehwan Kim <jae.hwan.kim@samsung.com>
Tue, 17 Nov 2015 05:15:43 +0000 (14:15 +0900)
Change-Id: I7a04d765edffc10ffea9a1ed791f3c05c6d33e1d
Signed-off-by: Sung-Taek Hong <sth253.hong@samsung.com>
src/lib/tizen_vector.c

index 6e3411bd2dae4b0bfa88fdd803e26112a9c956aa..05fa343ec607d40d9c936141bc6b7a94e0ff9189 100644 (file)
@@ -307,6 +307,14 @@ transit_check_favorite_op(Elm_Transit_Effect *effect,
    _check_favorite(vd, progress);
 }
 
+static void
+_transit_check_favorite_animation_finished(Elm_Transit_Effect *effect, Elm_Transit *transit EINA_UNUSED)
+{
+   check_favorite *vd = effect;
+
+   elm_layout_signal_emit(vd->obj, "elm,action,animation,finished", "elm");
+}
+
 static void
 check_favorite_vg_resize_cb(void *data, Evas *e EINA_UNUSED,
                             Evas_Object *obj EINA_UNUSED,
@@ -334,7 +342,7 @@ check_favorite_action_toggle_cb(void *data, Evas_Object *obj EINA_UNUSED,
    elm_transit_del(vd->transit);
    vd->transit = elm_transit_add();
    elm_transit_effect_add(vd->transit, transit_check_favorite_op, vd,
-                          NULL);
+                          _transit_check_favorite_animation_finished);
    elm_transit_del_cb_set(vd->transit, transit_check_favorite_del_cb, vd);
    elm_transit_tween_mode_set(vd->transit,
                               ELM_TRANSIT_TWEEN_MODE_DECELERATE);
@@ -507,6 +515,14 @@ transit_check_onoff_line_op(void *data, Elm_Transit *transit EINA_UNUSED,
    _check_onoff_line(vd, progress);
 }
 
+static void
+_transit_check_onoff_animation_finished(Elm_Transit_Effect *effect, Elm_Transit *transit EINA_UNUSED)
+{
+   check_onoff *vd = effect;
+
+   elm_layout_signal_emit(vd->obj, "elm,action,animation,finished", "elm");
+}
+
 static void
 transit_check_onoff_line_del_cb(void *data, Elm_Transit *transit EINA_UNUSED)
 {
@@ -606,7 +622,7 @@ check_onoff_action_toggle_cb(void *data, Evas_Object *obj EINA_UNUSED,
    elm_transit_del(vd->transit[2]);
    vd->transit[2] = elm_transit_add();
    elm_transit_effect_add(vd->transit[2], transit_check_onoff_sizing_op, vd,
-                          NULL);
+                          _transit_check_onoff_animation_finished);
    elm_transit_del_cb_set(vd->transit[2], transit_check_onoff_sizing_del_cb,
                           vd);
    elm_transit_tween_mode_set(vd->transit[2],
@@ -940,6 +956,14 @@ transit_check_default_bg_color_op(Elm_Transit_Effect *effect,
    _check_default_bg_color(vd, progress);
 }
 
+static void
+_transit_check_default_animation_finished(Elm_Transit_Effect *effect, Elm_Transit *transit EINA_UNUSED)
+{
+   check_default *vd = effect;
+
+   elm_layout_signal_emit(vd->obj, "elm,action,animation,finished", "elm");
+}
+
 static void
 transit_check_default_bg_scale_del_cb(Elm_Transit_Effect *effect,
                                       Elm_Transit *transit EINA_UNUSED)
@@ -1036,7 +1060,7 @@ check_default_action_toggle_cb(void *data, Evas_Object *obj EINA_UNUSED,
    elm_transit_del(vd->transit[0]);
    vd->transit[0] = elm_transit_add();
    elm_transit_effect_add(vd->transit[0], transit_check_default_bg_color_op, vd,
-                          NULL);
+                          _transit_check_default_animation_finished);
    elm_transit_del_cb_set(vd->transit[0], transit_check_default_bg_color_del_cb,
                           vd);
    elm_transit_tween_mode_set(vd->transit[0],