+ c->snext = stack;
+ stack = c;
+ XMapWindow(dpy, c->win);
+ XGrabButton(dpy, Button1, Mod1Mask, c->win, False, ButtonPressMask,
+ GrabModeAsync, GrabModeSync, None, None);
+ XGrabButton(dpy, Button2, Mod1Mask, c->win, False, ButtonPressMask,
+ GrabModeAsync, GrabModeSync, None, None);
+ XGrabButton(dpy, Button3, Mod1Mask, c->win, False, ButtonPressMask,
+ GrabModeAsync, GrabModeSync, None, None);
+ focus(c);
+}
+
+void
+resize(Client *c)
+{
+ XConfigureEvent e;
+
+ XMoveResizeWindow(dpy, c->win, c->r[RFloat].x, c->r[RFloat].y,
+ c->r[RFloat].width, c->r[RFloat].height);
+ e.type = ConfigureNotify;
+ e.event = c->win;
+ e.window = c->win;
+ e.x = c->r[RFloat].x;
+ e.y = c->r[RFloat].y;
+ e.width = c->r[RFloat].width;
+ e.height = c->r[RFloat].height;
+ e.border_width = 0;
+ e.above = None;
+ e.override_redirect = False;
+ XSelectInput(dpy, c->win, CLIENT_MASK & ~StructureNotifyMask);
+ XSendEvent(dpy, c->win, False, StructureNotifyMask, (XEvent *)&e);
+ XSelectInput(dpy, c->win, CLIENT_MASK);