livethumb - fix problem where e canvas list didnt del the livethumb ee

This commit is contained in:
Carsten Haitzler 2013-12-30 17:00:29 +09:00
parent ab268a42b0
commit 00050ffca8
2 changed files with 8 additions and 5 deletions

View File

@ -14,6 +14,7 @@ struct _E_Smart_Data
Evas_Object *evas_obj;
Evas_Object *thumb_obj;
Evas *evas;
Ecore_Evas *ee;
Evas_Coord vw, vh;
};
@ -135,18 +136,19 @@ _e_smart_add(Evas_Object *obj)
sd->vh = 1;
sd->evas_obj = ecore_evas_object_image_new(ecore_evas_ecore_evas_get(evas_object_evas_get(obj)));
ecore_evas_alpha_set(evas_object_data_get(sd->evas_obj, "Ecore_Evas"), 1);
sd->ee = evas_object_data_get(sd->evas_obj, "Ecore_Evas");
ecore_evas_alpha_set(sd->ee, 1);
evas_object_smart_member_add(sd->evas_obj, obj);
evas_object_image_size_set(sd->evas_obj, sd->vw, sd->vh);
sd->evas = ecore_evas_get(evas_object_data_get(sd->evas_obj, "Ecore_Evas"));
e_canvas_add(evas_object_data_get(sd->evas_obj, "Ecore_Evas"));
sd->evas = ecore_evas_get(sd->ee);
e_canvas_add(sd->ee);
}
static void
_e_smart_del(Evas_Object *obj)
{
INTERNAL_ENTRY;
e_canvas_del(evas_object_data_get(sd->evas_obj, "Ecore_Evas"));
e_canvas_del(sd->ee);
evas_object_del(sd->evas_obj);
free(sd);
}

View File

@ -326,7 +326,8 @@ e_win_show(E_Win *win)
if (!win->placed)
win->border->re_manage = 0;
win->border->internal = 1;
win->border->internal_ecore_evas = win->ecore_evas;
if (win->ecore_evas)
win->border->internal_ecore_evas = win->ecore_evas;
if (win->state.no_remember) win->border->internal_no_remember = 1;
win->border->internal_no_reopen = win->state.no_reopen;
}