forked from enlightenment/efl
elm_genlist: accurately handle contents for cached items
more fixes for the comically unreviewed revision from elm which continues
to cause bugs months after it was pushed
ref 4c86a66f28876b68e92a90c8f741eed1130dd034 (elm)
ref e88423e994
This commit is contained in:
parent
673f703bb0
commit
5c933b0176
|
@ -391,7 +391,7 @@ _item_content_realize(Elm_Gen_Item *it,
|
|||
if (it->itc->func.content_get)
|
||||
content = it->itc->func.content_get
|
||||
((void *)WIDGET_ITEM_DATA_GET(EO_OBJ(it)), WIDGET(it), key);
|
||||
if (!content) continue;
|
||||
if (!content) goto out;
|
||||
}
|
||||
|
||||
if (content != old)
|
||||
|
@ -414,8 +414,8 @@ _item_content_realize(Elm_Gen_Item *it,
|
|||
{
|
||||
ERR("%s (%p) can not be swallowed into %s",
|
||||
evas_object_type_get(content), content, key);
|
||||
evas_object_hide(content);
|
||||
continue;
|
||||
evas_object_del(content);
|
||||
goto out;
|
||||
}
|
||||
elm_widget_sub_object_add(WIDGET(it), content);
|
||||
}
|
||||
|
@ -426,7 +426,7 @@ _item_content_realize(Elm_Gen_Item *it,
|
|||
|
||||
snprintf(buf, sizeof(buf), "elm,state,%s,visible", key);
|
||||
edje_object_signal_emit(target, buf, "elm");
|
||||
|
||||
out:
|
||||
if (old && content != old)
|
||||
{
|
||||
*contents = eina_list_remove(*contents, old);
|
||||
|
|
Loading…
Reference in New Issue