xiwm

simple window manager
git clone https://git.ce9e.org/xiwm.git

commit
cdba0ecf9ada963d7e87e4817254b8c78d6262b0
parent
12aed400d3f5c60063aaf996a01fdaa8466c3741
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2019-10-13 11:06
inline configure

Diffstat

M xiwm.c 33 +++++++++++++--------------------

1 files changed, 13 insertions, 20 deletions


diff --git a/xiwm.c b/xiwm.c

@@ -167,25 +167,6 @@ xerrordummy(Display *dpy, XErrorEvent *ee)
  167   167 	return 0;
  168   168 }
  169   169 
  170    -1 void
  171    -1 configure(Client *c)
  172    -1 {
  173    -1 	XConfigureEvent ce;
  174    -1 
  175    -1 	ce.type = ConfigureNotify;
  176    -1 	ce.display = dpy;
  177    -1 	ce.event = c->win;
  178    -1 	ce.window = c->win;
  179    -1 	ce.x = c->x;
  180    -1 	ce.y = c->y;
  181    -1 	ce.width = c->w;
  182    -1 	ce.height = c->h;
  183    -1 	ce.border_width = 0;
  184    -1 	ce.above = None;
  185    -1 	ce.override_redirect = False;
  186    -1 	XSendEvent(dpy, c->win, False, StructureNotifyMask, (XEvent *)&ce);
  187    -1 }
  188    -1 
  189   170 Client *
  190   171 wintoclient(Window w)
  191   172 {
@@ -706,11 +687,23 @@ void
  706   687 configurerequest(XEvent *e)
  707   688 {
  708   689 	Client *c;
   -1   690 	XConfigureEvent ce;
  709   691 	XConfigureRequestEvent *ev = &e->xconfigurerequest;
  710   692 	XWindowChanges wc = { ev->x, ev->y, ev->width, ev->height, ev->border_width, ev->above, ev->detail };
  711   693 
  712   694 	if ((c = wintoclient(ev->window)) && !c->isdock) {
  713    -1 		configure(c);
   -1   695 		ce.type = ConfigureNotify;
   -1   696 		ce.display = dpy;
   -1   697 		ce.event = c->win;
   -1   698 		ce.window = c->win;
   -1   699 		ce.x = c->x;
   -1   700 		ce.y = c->y;
   -1   701 		ce.width = c->w;
   -1   702 		ce.height = c->h;
   -1   703 		ce.border_width = 0;
   -1   704 		ce.above = None;
   -1   705 		ce.override_redirect = False;
   -1   706 		XSendEvent(dpy, c->win, False, StructureNotifyMask, (XEvent *)&ce);
  714   707 	} else
  715   708 		XConfigureWindow(dpy, ev->window, ev->value_mask, &wc);
  716   709 	XSync(dpy, False);