diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index 63d2194e4..235fba30b 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -3702,11 +3702,11 @@ e_comp_object_effect_start(Evas_Object *obj, Edje_Signal_Cb end_cb, const void * } /* stop a currently-running effect immediately */ -E_API void +E_API Eina_Bool e_comp_object_effect_stop(Evas_Object *obj, Edje_Signal_Cb end_cb) { - API_ENTRY; - if (evas_object_data_get(cw->effect_obj, "_e_comp.end_cb") != end_cb) return; + API_ENTRY EINA_FALSE; + if (evas_object_data_get(cw->effect_obj, "_e_comp.end_cb") != end_cb) return EINA_TRUE; e_comp_object_effect_unclip(obj); if (cw->effect_clip) { @@ -3715,7 +3715,7 @@ e_comp_object_effect_stop(Evas_Object *obj, Edje_Signal_Cb end_cb) } edje_object_signal_emit(cw->effect_obj, "e,action,stop", "e"); edje_object_signal_callback_del_full(cw->effect_obj, "e,action,done", "e", _e_comp_object_effect_end_cb, cw); - _e_comp_object_animating_end(cw); + return _e_comp_object_animating_end(cw); } static int diff --git a/src/bin/e_comp_object.h b/src/bin/e_comp_object.h index 5db861e08..ea33f6a6a 100644 --- a/src/bin/e_comp_object.h +++ b/src/bin/e_comp_object.h @@ -79,7 +79,7 @@ E_API void e_comp_object_effect_params_set(Evas_Object *obj, int id, int *params E_API void e_comp_object_effect_clip(Evas_Object *obj); E_API void e_comp_object_effect_unclip(Evas_Object *obj); E_API Eina_Bool e_comp_object_effect_start(Evas_Object *obj, Edje_Signal_Cb end_cb, const void *end_data); -E_API void e_comp_object_effect_stop(Evas_Object *obj, Edje_Signal_Cb end_cb); +E_API Eina_Bool e_comp_object_effect_stop(Evas_Object *obj, Edje_Signal_Cb end_cb); E_API E_Comp_Object_Mover *e_comp_object_effect_mover_add(int pri, const char *sig, E_Comp_Object_Mover_Cb provider, const void *data); E_API void e_comp_object_effect_mover_del(E_Comp_Object_Mover *prov);