evas: Fix rare issue with recursive proxy src invisible
Scenario: smart { text proxy -> text, src_invisible } proxy -> smart What we should see: smart { (blank) proxy -> text } proxy -> { (blank) proxy -> text } What we saw: smart { (blank) proxy -> text } proxy -> { text proxy -> text } Solution: Check in evas render, when we're inside a proxy render, and the proxy src_invisible flag is on (evas_object_source_visible_set(0), that we're rendering the object itself to its proxy surface. If not, it means we're rendering another proxy surface, ie. a parent smart object's proxy surface. Still loving evas render. Fixes T4006. @fix
This commit is contained in:
parent
3671dd64c6
commit
07ea964e9f
|
@ -1388,6 +1388,13 @@ evas_render_mapped(Evas_Public_Data *evas, Evas_Object *eo_obj,
|
|||
RD(level, "}\n");
|
||||
return clean_them;
|
||||
}
|
||||
else if (proxy_render_data && (surface != obj->proxy->surface) &&
|
||||
obj->proxy->src_invisible)
|
||||
{
|
||||
RD(level, " src_invisible + not proxy surface (recursive proxies)\n");
|
||||
RD(level, "}\n");
|
||||
return clean_them;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (!evas_object_is_proxy_visible(eo_obj, obj) ||
|
||||
|
|
Loading…
Reference in New Issue