Browse Source

bugfix of transient handling

master
Anselm R. Garbe 18 years ago
parent
commit
df9fd28f9a
1 changed files with 8 additions and 8 deletions
  1. +8
    -8
      client.c

+ 8
- 8
client.c View File

@ -240,24 +240,24 @@ manage(Window w, XWindowAttributes *wa) {
c->y = way; c->y = way;
} }
updatesizehints(c); updatesizehints(c);
XSelectInput(dpy, c->win,
XSelectInput(dpy, w,
StructureNotifyMask | PropertyChangeMask | EnterWindowMask); StructureNotifyMask | PropertyChangeMask | EnterWindowMask);
XGetTransientForHint(dpy, c->win, &trans);
XGetTransientForHint(dpy, w, &trans);
grabbuttons(c, False); grabbuttons(c, False);
wc.border_width = c->border; wc.border_width = c->border;
XConfigureWindow(dpy, c->win, CWBorderWidth, &wc);
XSetWindowBorder(dpy, c->win, dc.norm[ColBorder]);
XConfigureWindow(dpy, w, CWBorderWidth, &wc);
XSetWindowBorder(dpy, w, dc.norm[ColBorder]);
configure(c); /* propagates border_width, if size doesn't change */ configure(c); /* propagates border_width, if size doesn't change */
updatetitle(c); updatetitle(c);
for(t = clients; t && t->win != c->win; t = t->next);
for(t = clients; t && t->win != trans; t = t->next);
settags(c, t); settags(c, t);
if(!c->isfloat) if(!c->isfloat)
c->isfloat = (t != 0) || c->isfixed;
c->isfloat = (t != NULL) || c->isfixed;
attach(c); attach(c);
attachstack(c); attachstack(c);
c->isbanned = True; c->isbanned = True;
XMoveWindow(dpy, c->win, c->x + 2 * sw, c->y);
XMapWindow(dpy, c->win);
XMoveWindow(dpy, w, c->x + 2 * sw, c->y);
XMapWindow(dpy, w);
setclientstate(c, NormalState); setclientstate(c, NormalState);
if(isvisible(c)) if(isvisible(c))
focus(c); focus(c);


Loading…
Cancel
Save