added general centralization rule for new clients (works around various borken apps)
This commit is contained in:
parent
4cc0551948
commit
a20b10d01f
2 changed files with 14 additions and 2 deletions
11
client.c
11
client.c
|
@ -187,7 +187,7 @@ killclient(Arg *arg)
|
||||||
void
|
void
|
||||||
manage(Window w, XWindowAttributes *wa)
|
manage(Window w, XWindowAttributes *wa)
|
||||||
{
|
{
|
||||||
Client *c;
|
Client *c, *tc;
|
||||||
Window trans;
|
Window trans;
|
||||||
XSetWindowAttributes twa;
|
XSetWindowAttributes twa;
|
||||||
|
|
||||||
|
@ -258,6 +258,15 @@ manage(Window w, XWindowAttributes *wa)
|
||||||
c->maxw == c->minw && c->maxh == c->minh);
|
c->maxw == c->minw && c->maxh == c->minh);
|
||||||
settitle(c);
|
settitle(c);
|
||||||
|
|
||||||
|
if(trans && (tc = getclient(trans))) {
|
||||||
|
c->x = (tc->x + tc->w / 2) - (c->w / 2);
|
||||||
|
c->y = (tc->y + tc->h / 2) - (c->h / 2);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
c->x = (sw / 2) - (c->w / 2);
|
||||||
|
c->y = ((sh - bh) / 2) - (c->h / 2) + bh;
|
||||||
|
}
|
||||||
|
|
||||||
if(isvisible(c))
|
if(isvisible(c))
|
||||||
sel = c;
|
sel = c;
|
||||||
arrange(NULL);
|
arrange(NULL);
|
||||||
|
|
5
tag.c
5
tag.c
|
@ -281,7 +281,10 @@ void
|
||||||
togglemode(Arg *arg)
|
togglemode(Arg *arg)
|
||||||
{
|
{
|
||||||
arrange = arrange == dofloat ? dotile : dofloat;
|
arrange = arrange == dofloat ? dotile : dofloat;
|
||||||
arrange(NULL);
|
if(sel)
|
||||||
|
arrange(NULL);
|
||||||
|
else
|
||||||
|
drawstatus();
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
Loading…
Reference in a new issue