forked from enlightenment/enlightenment
force window resize when pixmap comes back with a size that doesn't match the client window
this causes comp to refetch the pixmap again with the correct size and allows windows which were shaded across a restart to be unshaded
This commit is contained in:
parent
053a14197e
commit
727cd45b5c
|
@ -497,7 +497,17 @@ _e_comp_win_geometry_update(E_Comp_Win *cw)
|
|||
else if (cw->bd)
|
||||
{
|
||||
if (((!cw->bd->shaded) && (!cw->bd->shading)) && cw->pw && cw->ph)
|
||||
w = cw->pw + cw->bd->client_inset.l + cw->bd->client_inset.r, h = cw->ph + cw->bd->client_inset.t + cw->bd->client_inset.b;
|
||||
{
|
||||
w = cw->pw + cw->bd->client_inset.l + cw->bd->client_inset.r, h = cw->ph + cw->bd->client_inset.t + cw->bd->client_inset.b;
|
||||
if ((cw->pw != cw->bd->client.w) || (cw->ph != cw->bd->client.h))
|
||||
{
|
||||
/* something fucked us and the pixmap came back with the wrong size
|
||||
* fix it by forcing a resize in e_border
|
||||
*/
|
||||
BD_CHANGED(cw->bd);
|
||||
cw->bd->changes.size = 1;
|
||||
}
|
||||
}
|
||||
else
|
||||
w = cw->bd->w, h = cw->bd->h;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue