diff options
author | Eric Pruitt <eric.pruitt@gmail.com> | 2016-05-25 16:33:11 -0700 |
---|---|---|
committer | Anselm R Garbe <anselm@garbe.us> | 2016-06-24 05:38:58 +0200 |
commit | cd2d7549b3ae5ec234b45d85608f79f4d3aaa851 (patch) | |
tree | ad0ff250266c4fbe6f9125de922bab75ac95cdde /dwm.c | |
parent | 3465bed290abc62cb2e69a8096084ba6b8eb4956 (diff) |
Configure geometry before applying rules
Configuring geometry before applying rules makes it possible to have
more complex constraints in applyrules that depend on the initial window
dimensions and location.
Diffstat (limited to 'dwm.c')
-rw-r--r-- | dwm.c | 13 |
1 files changed, 7 insertions, 6 deletions
@@ -1043,6 +1043,13 @@ manage(Window w, XWindowAttributes *wa) c = ecalloc(1, sizeof(Client)); c->win = w; + /* geometry */ + c->x = c->oldx = wa->x; + c->y = c->oldy = wa->y; + c->w = c->oldw = wa->width; + c->h = c->oldh = wa->height; + c->oldbw = wa->border_width; + updatetitle(c); if (XGetTransientForHint(dpy, w, &trans) && (t = wintoclient(trans))) { c->mon = t->mon; @@ -1051,12 +1058,6 @@ manage(Window w, XWindowAttributes *wa) c->mon = selmon; applyrules(c); } - /* geometry */ - c->x = c->oldx = wa->x; - c->y = c->oldy = wa->y; - c->w = c->oldw = wa->width; - c->h = c->oldh = wa->height; - c->oldbw = wa->border_width; if (c->x + WIDTH(c) > c->mon->mx + c->mon->mw) c->x = c->mon->mx + c->mon->mw - WIDTH(c); |