From c1aa40459115b5476726abd8ab793d57d4523bd0 Mon Sep 17 00:00:00 2001 From: uint23 Date: Thu, 17 Apr 2025 12:50:13 +0100 Subject: snap borders and release time ( less cpu usage) --- src/defs.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/defs.h') diff --git a/src/defs.h b/src/defs.h index 1521f0a..c9ca97b 100644 --- a/src/defs.h +++ b/src/defs.h @@ -16,6 +16,15 @@ #define BIND(mod, key, cmdstr) { (mod), XK_##key, { cmdstr }, 0 } #define CALL(mod, key, fnptr) { (mod), XK_##key, { .fn = fnptr }, 1 } +#define UDIST(a,b) abs((int)(a) - (int)(b)) +#define SNAP_EDGE(pos, size, bound) \ + do { \ + if (UDIST(pos, 0) < SNAP_DISTANCE) \ + pos = 0; \ + else if (UDIST(pos, (bound) - (size)) < SNAP_DISTANCE)\ + pos = (bound) - (size); \ + } while (0) + #define MAXCLIENTS 64 enum { DRAG_NONE, DRAG_MOVE, DRAG_RESIZE } drag_mode = DRAG_NONE; -- cgit v1.2.3