itDon't restrict snap in mousemove - dwm - [fork] customized build of dwm, the dynamic window manager Err adamsgaard.dk 70 hgit clone git://src.adamsgaard.dk/dwm URL:git://src.adamsgaard.dk/dwm adamsgaard.dk 70 1Log /src/dwm/log.gph adamsgaard.dk 70 1Files /src/dwm/files.gph adamsgaard.dk 70 1Refs /src/dwm/refs.gph adamsgaard.dk 70 1README /src/dwm/file/README.gph adamsgaard.dk 70 1LICENSE /src/dwm/file/LICENSE.gph adamsgaard.dk 70 i--- Err adamsgaard.dk 70 1commit 5b238c8dab945023b6a16a6c9f642b11137f2204 /src/dwm/commit/5b238c8dab945023b6a16a6c9f642b11137f2204.gph adamsgaard.dk 70 1parent 022d07605412bc5bd9726f74af9355c562ba4957 /src/dwm/commit/022d07605412bc5bd9726f74af9355c562ba4957.gph adamsgaard.dk 70 hAuthor: Markus Teich URL:mailto:markus.teich@stusta.mhn.de adamsgaard.dk 70 iDate: Sat, 7 Jan 2017 17:21:30 +0100 Err adamsgaard.dk 70 i Err adamsgaard.dk 70 iDon't restrict snap in mousemove Err adamsgaard.dk 70 i Err adamsgaard.dk 70 iThis also fixes a bug where client windows only switch to floating mode when the Err adamsgaard.dk 70 imouse is dragged in one specific direction. Err adamsgaard.dk 70 i Err adamsgaard.dk 70 iDiffstat: Err adamsgaard.dk 70 i M dwm.c | 25 +++++++++++-------------- Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i1 file changed, 11 insertions(+), 14 deletions(-) Err adamsgaard.dk 70 i--- Err adamsgaard.dk 70 1diff --git a/dwm.c b/dwm.c /src/dwm/file/dwm.c.gph adamsgaard.dk 70 it@@ -1170,20 +1170,17 @@ movemouse(const Arg *arg) Err adamsgaard.dk 70 i Err adamsgaard.dk 70 i nx = ocx + (ev.xmotion.x - x); Err adamsgaard.dk 70 i ny = ocy + (ev.xmotion.y - y); Err adamsgaard.dk 70 i- if (nx >= selmon->wx && nx <= selmon->wx + selmon->ww Err adamsgaard.dk 70 i- && ny >= selmon->wy && ny <= selmon->wy + selmon->wh) { Err adamsgaard.dk 70 i- if (abs(selmon->wx - nx) < snap) Err adamsgaard.dk 70 i- nx = selmon->wx; Err adamsgaard.dk 70 i- else if (abs((selmon->wx + selmon->ww) - (nx + WIDTH(c))) < snap) Err adamsgaard.dk 70 i- nx = selmon->wx + selmon->ww - WIDTH(c); Err adamsgaard.dk 70 i- if (abs(selmon->wy - ny) < snap) Err adamsgaard.dk 70 i- ny = selmon->wy; Err adamsgaard.dk 70 i- else if (abs((selmon->wy + selmon->wh) - (ny + HEIGHT(c))) < snap) Err adamsgaard.dk 70 i- ny = selmon->wy + selmon->wh - HEIGHT(c); Err adamsgaard.dk 70 i- if (!c->isfloating && selmon->lt[selmon->sellt]->arrange Err adamsgaard.dk 70 i- && (abs(nx - c->x) > snap || abs(ny - c->y) > snap)) Err adamsgaard.dk 70 i- togglefloating(NULL); Err adamsgaard.dk 70 i- } Err adamsgaard.dk 70 i+ if (abs(selmon->wx - nx) < snap) Err adamsgaard.dk 70 i+ nx = selmon->wx; Err adamsgaard.dk 70 i+ else if (abs((selmon->wx + selmon->ww) - (nx + WIDTH(c))) < snap) Err adamsgaard.dk 70 i+ nx = selmon->wx + selmon->ww - WIDTH(c); Err adamsgaard.dk 70 i+ if (abs(selmon->wy - ny) < snap) Err adamsgaard.dk 70 i+ ny = selmon->wy; Err adamsgaard.dk 70 i+ else if (abs((selmon->wy + selmon->wh) - (ny + HEIGHT(c))) < snap) Err adamsgaard.dk 70 i+ ny = selmon->wy + selmon->wh - HEIGHT(c); Err adamsgaard.dk 70 i+ if (!c->isfloating && selmon->lt[selmon->sellt]->arrange Err adamsgaard.dk 70 i+ && (abs(nx - c->x) > snap || abs(ny - c->y) > snap)) Err adamsgaard.dk 70 i+ togglefloating(NULL); Err adamsgaard.dk 70 i if (!selmon->lt[selmon->sellt]->arrange || c->isfloating) Err adamsgaard.dk 70 i resize(c, nx, ny, c->w, c->h, 1); Err adamsgaard.dk 70 i break; Err adamsgaard.dk 70 .