Fix check of 2 parents client geos: using temporary geo instead of original in case of manual locking resize
This commit is contained in:
parent
017070d585
commit
0e7e9a135e
16
src/client.c
16
src/client.c
@ -1116,7 +1116,7 @@ _fac_resize(struct client *c, enum position p, int fac)
|
|||||||
SLIST_FOREACH(cc, &c->tag->clients, tnext)
|
SLIST_FOREACH(cc, &c->tag->clients, tnext)
|
||||||
cc->ttgeo = cc->tgeo;
|
cc->ttgeo = cc->tgeo;
|
||||||
|
|
||||||
if(GEO_CHECK2(c->geo, gc->geo, p))
|
if(GEO_CHECK2(c->tgeo, gc->tgeo, p))
|
||||||
{
|
{
|
||||||
_fac_apply(c, p, fac);
|
_fac_apply(c, p, fac);
|
||||||
_fac_apply(gc, rp, -fac);
|
_fac_apply(gc, rp, -fac);
|
||||||
@ -1245,19 +1245,19 @@ client_fac_hint(struct client *c)
|
|||||||
int w = c->sizeh[MINW] + c->border + c->border;
|
int w = c->sizeh[MINW] + c->border + c->border;
|
||||||
int h = c->sizeh[MINH] + c->tbarw + c->border;
|
int h = c->sizeh[MINH] + c->tbarw + c->border;
|
||||||
|
|
||||||
if(c->geo.w < w)
|
|
||||||
_fac_resize(c, Left, (w - c->geo.w));
|
|
||||||
if(c->tgeo.w < w)
|
|
||||||
_fac_resize(c, Right, (w - c->tgeo.w));
|
|
||||||
|
|
||||||
client_apply_tgeo(c->tag);
|
|
||||||
|
|
||||||
if(c->geo.h < h)
|
if(c->geo.h < h)
|
||||||
_fac_resize(c, Top, (h - c->geo.h));
|
_fac_resize(c, Top, (h - c->geo.h));
|
||||||
if(c->tgeo.h < h)
|
if(c->tgeo.h < h)
|
||||||
_fac_resize(c, Bottom, (h - c->tgeo.h));
|
_fac_resize(c, Bottom, (h - c->tgeo.h));
|
||||||
|
|
||||||
client_apply_tgeo(c->tag);
|
client_apply_tgeo(c->tag);
|
||||||
|
|
||||||
|
if(c->geo.w < w)
|
||||||
|
_fac_resize(c, Left, (w - c->geo.w));
|
||||||
|
if(c->tgeo.w < w)
|
||||||
|
_fac_resize(c, Right, (w - c->tgeo.w));
|
||||||
|
|
||||||
|
client_apply_tgeo(c->tag);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user