X-Git-Url: https://git.xinqibao.xyz/dwm.git/blobdiff_plain/cf58091736de194fabfd25420bbd1999b4ad3360..598e22907e6a3bcfbc35f913dae24d031d6f9170:/main.c?ds=sidebyside diff --git a/main.c b/main.c index 5324ae0..af1f1a6 100644 --- a/main.c +++ b/main.c @@ -190,7 +190,7 @@ setup(void) { wa.override_redirect = 1; wa.background_pixmap = ParentRelative; wa.event_mask = ButtonPressMask | ExposureMask; - barwin = XCreateWindow(dpy, root, sx, sy - bh, sw, bh, 0, + barwin = XCreateWindow(dpy, root, sx, sy, sw, bh, 0, DefaultDepth(dpy, screen), CopyFromParent, DefaultVisual(dpy, screen), CWOverrideRedirect | CWBackPixmap | CWEventMask, &wa); XDefineCursor(dpy, barwin, cursor[CurNormal]); @@ -227,12 +227,14 @@ quit(const char *arg) { void updatebarpos(void) { + XEvent ev; + wax = sx; way = sy; wah = sh; waw = sw; switch(bpos) { - case BarTop: + default: wah -= bh; way += bh; XMoveWindow(dpy, barwin, sx, sy); @@ -243,8 +245,10 @@ updatebarpos(void) { break; case BarOff: XMoveWindow(dpy, barwin, sx, sy - bh); + break; } - lt->arrange(); + XSync(dpy, False); + while(XCheckMaskEvent(dpy, EnterWindowMask, &ev)); } /* There's no way to check accesses to destroyed windows, thus those cases are