{
ELM_WIDGET_DATA_GET_OR_RETURN(obj, wd);
if (pd->file) eina_stringshare_del(pd->file);
- if (pd->transit) elm_transit_del(pd->transit);
+ if (pd->transit)
+ {
+ pd->transit = NULL; //Skip perform transit_del_cb()
+ elm_transit_del(pd->transit);
+ }
pd->state = ELM_ANIMATION_VIEW_STATE_NOT_READY;
eo_do_super(obj, MY_CLASS, evas_obj_smart_del());
}
evas_object_vg_animated_frame_set(pd->vg, (int) (pd->frame_cnt * keyframe));
if (pd->transit)
- elm_transit_progress_value_set(pd->transit, keyframe);
+ {
+ if (pd->play_back)
+ elm_transit_progress_value_set(pd->transit, 1 - keyframe);
+ else
+ elm_transit_progress_value_set(pd->transit, keyframe);
+ }
}
EOLIAN static double