From a0cc9fcbdf007e8a96960c92a82f1354956060d5 Mon Sep 17 00:00:00 2001 From: okan Date: Tue, 15 Nov 2016 00:07:03 +0000 Subject: Add a wrapper based upon xevent handlers around client move/resize for key and mouse bindings. --- kbfunc.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'kbfunc.c') diff --git a/kbfunc.c b/kbfunc.c index 76f3d2e..a9d6939 100644 --- a/kbfunc.c +++ b/kbfunc.c @@ -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.134 2016/10/24 20:44:08 okan Exp $ + * $OpenBSD: kbfunc.c,v 1.135 2016/11/15 00:07:03 okan Exp $ */ #include @@ -85,6 +85,17 @@ kbfunc_ptrmove(void *ctx, union arg *arg, enum xev xev) void kbfunc_client_move(void *ctx, union arg *arg, enum xev xev) +{ + int m = (xev == CWM_XEV_BTN); + + if (m) + mousefunc_client_move(ctx, arg, xev); + else + kbfunc_client_move_key(ctx, arg, xev); +} + +void +kbfunc_client_move_key(void *ctx, union arg *arg, enum xev xev) { struct client_ctx *cc = ctx; struct screen_ctx *sc = cc->sc; @@ -139,6 +150,17 @@ kbfunc_client_move(void *ctx, union arg *arg, enum xev xev) void kbfunc_client_resize(void *ctx, union arg *arg, enum xev xev) +{ + int m = (xev == CWM_XEV_BTN); + + if (m) + mousefunc_client_resize(ctx, arg, xev); + else + kbfunc_client_resize_key(ctx, arg, xev); +} + +void +kbfunc_client_resize_key(void *ctx, union arg *arg, enum xev xev) { struct client_ctx *cc = ctx; unsigned int mx = 0, my = 0; -- cgit v1.2.3-2-gb3c3