diff options
author | okan | 2011-06-24 06:06:24 +0000 |
---|---|---|
committer | okan | 2011-06-24 06:06:24 +0000 |
commit | ab4a3c9a9f59f702603e19f3eb3508a815521d6c (patch) | |
tree | ac1d554c262b5b74f3aaca048f357f87469c49c7 /kbfunc.c | |
parent | c94e1a5dfb1df6ef5292efe8116084f95220d1a1 (diff) | |
download | cwm-ab4a3c9a9f59f702603e19f3eb3508a815521d6c.tar.gz |
introduce a new config option to snap to the screen edge. 'snapdist'
keyword taken from a diff from Sviatoslav Chagaev to do the same thing,
but implemented in a completely way (based on some very old code from
mk@). default set to 0, so no behavior change.
ok oga@ (who would also like to take it further...)
Diffstat (limited to '')
-rw-r--r-- | kbfunc.c | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $OpenBSD: kbfunc.c,v 1.54 2011/06/24 05:33:41 okan Exp $ + * $OpenBSD: kbfunc.c,v 1.55 2011/06/24 06:06:24 okan Exp $ */ #include <sys/param.h> @@ -100,6 +100,13 @@ kbfunc_moveresize(struct client_ctx *cc, union arg *arg) if (cc->geom.x > cc->sc->xmax - 1) cc->geom.x = cc->sc->xmax - 1; + cc->geom.x += client_snapcalc(cc->geom.x, + cc->geom.width, cc->sc->xmax, + cc->bwidth, Conf.snapdist); + cc->geom.y += client_snapcalc(cc->geom.y, + cc->geom.height, cc->sc->ymax, + cc->bwidth, Conf.snapdist); + client_move(cc); xu_ptr_getpos(cc->win, &x, &y); cc->ptr.y = y + my; |