account for race condition when creating initial comp object updates tiler
added to maintain compositor logic parity
This commit is contained in:
parent
eef5efe8c3
commit
0fa853d742
|
@ -1301,6 +1301,24 @@ _e_comp_intercept_show_helper(E_Comp_Object *cw)
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if ((!cw->updates) && (!cw->ec->input_only) && (!cw->ec->ignored))
|
||||||
|
{
|
||||||
|
int pw, ph;
|
||||||
|
|
||||||
|
pw = cw->ec->client.w, ph = cw->ec->client.h;
|
||||||
|
if ((!pw) || (!ph))
|
||||||
|
e_pixmap_size_get(cw->ec->pixmap, &pw, &ph);
|
||||||
|
cw->updates = eina_tiler_new(pw, ph);
|
||||||
|
if (!cw->updates)
|
||||||
|
{
|
||||||
|
cw->ec->changes.visible = !cw->ec->hidden;
|
||||||
|
cw->ec->visible = 1;
|
||||||
|
EC_CHANGED(cw->ec);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (cw->updates)
|
||||||
|
eina_tiler_tile_size_set(cw->updates, 1, 1);
|
||||||
if (cw->ec->new_client)
|
if (cw->ec->new_client)
|
||||||
{
|
{
|
||||||
/* ignore until client idler first run */
|
/* ignore until client idler first run */
|
||||||
|
@ -1390,12 +1408,6 @@ _e_comp_intercept_show(void *data, Evas_Object *obj EINA_UNUSED)
|
||||||
#endif
|
#endif
|
||||||
cw->redirected = 1;
|
cw->redirected = 1;
|
||||||
evas_object_color_set(cw->clip, ec->netwm.opacity, ec->netwm.opacity, ec->netwm.opacity, ec->netwm.opacity);
|
evas_object_color_set(cw->clip, ec->netwm.opacity, ec->netwm.opacity, ec->netwm.opacity, ec->netwm.opacity);
|
||||||
|
|
||||||
if ((!cw->ec->input_only) && (!cw->ec->ignored))
|
|
||||||
{
|
|
||||||
cw->updates = eina_tiler_new(cw->ec->client.w, cw->ec->client.h);
|
|
||||||
eina_tiler_tile_size_set(cw->updates, 1, 1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_e_comp_intercept_show_helper(cw);
|
_e_comp_intercept_show_helper(cw);
|
||||||
|
|
Loading…
Reference in New Issue