From 0415175e10880585c765613af0bd43e02de87116 Mon Sep 17 00:00:00 2001 From: Christoph Lohmann <20h@r-36.net> Date: Sat, 26 Jan 2013 16:00:52 +0100 Subject: Making more than one Modkey to work in keys. --- surf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'surf.c') diff --git a/surf.c b/surf.c index 14788e5..682c1e2 100644 --- a/surf.c +++ b/surf.c @@ -28,6 +28,7 @@ char *argv0; #define LENGTH(x) (sizeof x / sizeof x[0]) +#define CLEANMASK(mask) (mask & (MODKEY|GDK_SHIFT_MASK)) #define COOKIEJAR_TYPE (cookiejar_get_type ()) #define COOKIEJAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), COOKIEJAR_TYPE, CookieJar)) @@ -543,7 +544,7 @@ keypress(GtkWidget* w, GdkEventKey *ev, Client *c) { updatewinid(c); for(i = 0; i < LENGTH(keys); i++) { if(gdk_keyval_to_lower(ev->keyval) == keys[i].keyval - && (ev->state & keys[i].mod) == keys[i].mod + && CLEANMASK(ev->state) == keys[i].mod && keys[i].func) { keys[i].func(c, &(keys[i].arg)); processed = TRUE; -- cgit v1.2.3