Mercurial > dwm-meillo
comparison client.c @ 79:aabebd6e61f3
fixed XSync handling and finished man page
author | Anselm R. Garbe <garbeam@wmii.de> |
---|---|
date | Sat, 15 Jul 2006 18:51:44 +0200 |
parents | 38c8f7f7d401 |
children | 8125f908c80c |
comparison
equal
deleted
inserted
replaced
78:0d71fb80b592 | 79:aabebd6e61f3 |
---|---|
47 focus(Client *c) | 47 focus(Client *c) |
48 { | 48 { |
49 Client *old = sel; | 49 Client *old = sel; |
50 XEvent ev; | 50 XEvent ev; |
51 | 51 |
52 XFlush(dpy); | |
53 sel = c; | 52 sel = c; |
54 if(old && old != c) | 53 if(old && old != c) |
55 drawtitle(old); | 54 drawtitle(old); |
56 drawtitle(c); | 55 drawtitle(c); |
57 XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); | 56 XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); |
58 XFlush(dpy); | 57 XSync(dpy, False); |
59 while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); | 58 while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); |
60 } | 59 } |
61 | 60 |
62 void | 61 void |
63 focusnext(Arg *arg) | 62 focusnext(Arg *arg) |
301 e.height = c->h; | 300 e.height = c->h; |
302 e.border_width = c->border; | 301 e.border_width = c->border; |
303 e.above = None; | 302 e.above = None; |
304 e.override_redirect = False; | 303 e.override_redirect = False; |
305 XSendEvent(dpy, c->win, False, StructureNotifyMask, (XEvent *)&e); | 304 XSendEvent(dpy, c->win, False, StructureNotifyMask, (XEvent *)&e); |
306 XFlush(dpy); | 305 XSync(dpy, False); |
307 } | 306 } |
308 | 307 |
309 void | 308 void |
310 setsize(Client *c) | 309 setsize(Client *c) |
311 { | 310 { |
391 if(sel == c) | 390 if(sel == c) |
392 sel = sel->revert ? sel->revert : clients; | 391 sel = sel->revert ? sel->revert : clients; |
393 | 392 |
394 free(c); | 393 free(c); |
395 | 394 |
396 XFlush(dpy); | 395 XSync(dpy, False); |
397 XSetErrorHandler(xerror); | 396 XSetErrorHandler(xerror); |
398 XUngrabServer(dpy); | 397 XUngrabServer(dpy); |
399 arrange(NULL); | 398 arrange(NULL); |
400 if(sel) | 399 if(sel) |
401 focus(sel); | 400 focus(sel); |