X-Git-Url: https://git.xinqibao.xyz/dwm.git/blobdiff_plain/d7734f996ff2eae29fea14af76711d7f51648c10..99785382ae6d4b20e8baf33542059e466e0b3c7c:/event.c?ds=sidebyside diff --git a/event.c b/event.c index 42a6fc0..007dbbc 100644 --- a/event.c +++ b/event.c @@ -48,6 +48,14 @@ movemouse(Client *c) { XSync(dpy, False); c->x = ocx + (ev.xmotion.x - x1); c->y = ocy + (ev.xmotion.y - y1); + if(abs(c->x) < sx + SNAP) + c->x = sx; + else if(c->x + c->w > sx + sw - SNAP) + c->x = sw - c->w - 2 * BORDERPX; + if(abs(c->y) < sy + bh + SNAP) + c->y = sy + bh; + else if(c->y + c->h > sy + sh - SNAP) + c->y = sh - c->h - 2 * BORDERPX; resize(c, False, TopLeft); break; } @@ -136,7 +144,8 @@ buttonpress(XEvent *e) { } else if(ev->button == Button2) zoom(NULL); - else if(ev->button == Button3 && (arrange == dofloat || c->isfloat)) { + else if(ev->button == Button3 && (arrange == dofloat || c->isfloat) && + !c->isfixed) { restack(); resizemouse(c); }