forked from enlightenment/efl
evas/evas3d: reset image properies if the image is used for scene.
This commit is contained in:
parent
676a42f4b7
commit
d497cd4364
|
@ -785,13 +785,17 @@ EOLIAN static void
|
||||||
_evas_image_scene_set(Eo *eo_obj, Evas_Image_Data *o, Evas_3D_Scene *scene)
|
_evas_image_scene_set(Eo *eo_obj, Evas_Image_Data *o, Evas_3D_Scene *scene)
|
||||||
{
|
{
|
||||||
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJ_CLASS);
|
Evas_Object_Protected_Data *obj = eo_data_scope_get(eo_obj, EVAS_OBJ_CLASS);
|
||||||
|
Evas_Image_Load_Opts lo;
|
||||||
|
|
||||||
if (o->cur->scene == scene) return;
|
if (o->cur->scene == scene) return;
|
||||||
|
|
||||||
_evas_object_image_cleanup(eo_obj, obj, o);
|
_image_init_set(NULL, NULL, NULL, eo_obj, obj, o, &lo);
|
||||||
|
o->engine_data = obj->layer->evas->engine.func->image_load(obj->layer->evas->engine.data.output,
|
||||||
if (o->cur->u.file || o->cur->key)
|
o->cur->u.file,
|
||||||
evas_object_image_file_set(eo_obj, NULL, NULL);
|
o->cur->key,
|
||||||
|
&o->load_error,
|
||||||
|
&lo);
|
||||||
|
_image_done_set(eo_obj, obj, o);
|
||||||
|
|
||||||
if (scene) _3d_set(eo_obj, scene);
|
if (scene) _3d_set(eo_obj, scene);
|
||||||
else _3d_unset(eo_obj, obj, o);
|
else _3d_unset(eo_obj, obj, o);
|
||||||
|
@ -975,6 +979,8 @@ _evas_image_size_set(Eo *eo_obj, Evas_Image_Data *o, int w, int h)
|
||||||
|
|
||||||
int stride = 0;
|
int stride = 0;
|
||||||
|
|
||||||
|
if (o->cur->scene) return;
|
||||||
|
|
||||||
_evas_object_image_cleanup(eo_obj, obj, o);
|
_evas_object_image_cleanup(eo_obj, obj, o);
|
||||||
if (w < 1) w = 1;
|
if (w < 1) w = 1;
|
||||||
if (h < 1) h = 1;
|
if (h < 1) h = 1;
|
||||||
|
|
Loading…
Reference in New Issue