summary refs log tree commit diff
diff options
context:
space:
mode:
authorokan <okan>2014-01-20 23:03:51 +0000
committerokan <okan>2014-01-20 23:03:51 +0000
commitc7adadaf9de082d9a0d811cdf8b0b24de6da31b4 (patch)
tree8d332ab7418475f1a4eeebaa9198fdc6f18ceaad
parent34f43e3f2d34874cd2e7d8c81d6b8814f8292de6 (diff)
downloadcwm-c7adadaf9de082d9a0d811cdf8b0b24de6da31b4.tar.gz
cwm-c7adadaf9de082d9a0d811cdf8b0b24de6da31b4.tar.xz
cwm-c7adadaf9de082d9a0d811cdf8b0b24de6da31b4.zip
merge KBFLAG_NEEDCLIENT and MOUSEBIND_CTX_*; brings kbfunc and mousefunc
bits even closer.
-rw-r--r--calmwm.h5
-rw-r--r--conf.c121
-rw-r--r--xevents.c6
3 files changed, 58 insertions, 74 deletions
diff --git a/calmwm.h b/calmwm.h
index e656b6c..54c6d17 100644
--- a/calmwm.h
+++ b/calmwm.h
@@ -83,6 +83,8 @@
 #define CWM_GAP			0x0001
 #define CWM_NOGAP		0x0002
 
+#define CWM_WIN			0x0001
+
 union arg {
 	char	*c;
 	int	 i;
@@ -247,7 +249,6 @@ struct keybinding {
 	union arg		 argument;
 	unsigned int		 modmask;
 	KeySym			 keysym;
-#define KBFLAG_NEEDCLIENT	 0x0001
 	int			 flags;
 	int			 argtype;
 };
@@ -259,8 +260,6 @@ struct mousebinding {
 	union arg			argument;
 	unsigned int			modmask;
 	unsigned int		 	button;
-#define MOUSEBIND_CTX_ROOT		0x0001
-#define MOUSEBIND_CTX_WIN		0x0002
 	int				flags;
 };
 TAILQ_HEAD(mousebinding_q, mousebinding);
diff --git a/conf.c b/conf.c
index e322e66..4f90a45 100644
--- a/conf.c
+++ b/conf.c
@@ -324,15 +324,15 @@ static struct {
 	int		 flags;
 	union arg	 argument;
 } name_to_kbfunc[] = {
-	{ "lower", kbfunc_client_lower, KBFLAG_NEEDCLIENT, {0} },
-	{ "raise", kbfunc_client_raise, KBFLAG_NEEDCLIENT, {0} },
+	{ "lower", kbfunc_client_lower, CWM_WIN, {0} },
+	{ "raise", kbfunc_client_raise, CWM_WIN, {0} },
 	{ "search", kbfunc_client_search, 0, {0} },
 	{ "menusearch", kbfunc_menu_search, 0, {0} },
-	{ "hide", kbfunc_client_hide, KBFLAG_NEEDCLIENT, {0} },
+	{ "hide", kbfunc_client_hide, CWM_WIN, {0} },
 	{ "cycle", kbfunc_client_cycle, 0, {.i = CWM_CYCLE} },
 	{ "rcycle", kbfunc_client_cycle, 0, {.i = CWM_RCYCLE} },
-	{ "label", kbfunc_client_label, KBFLAG_NEEDCLIENT, {0} },
-	{ "delete", kbfunc_client_delete, KBFLAG_NEEDCLIENT, {0} },
+	{ "label", kbfunc_client_label, CWM_WIN, {0} },
+	{ "delete", kbfunc_client_delete, CWM_WIN, {0} },
 	{ "group1", kbfunc_client_group, 0, {.i = 1} },
 	{ "group2", kbfunc_client_group, 0, {.i = 2} },
 	{ "group3", kbfunc_client_group, 0, {.i = 3} },
@@ -351,37 +351,28 @@ static struct {
 	{ "grouponly7", kbfunc_client_grouponly, 0, {.i = 7} },
 	{ "grouponly8", kbfunc_client_grouponly, 0, {.i = 8} },
 	{ "grouponly9", kbfunc_client_grouponly, 0, {.i = 9} },
-	{ "movetogroup1", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 1} },
-	{ "movetogroup2", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 2} },
-	{ "movetogroup3", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 3} },
-	{ "movetogroup4", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 4} },
-	{ "movetogroup5", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 5} },
-	{ "movetogroup6", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 6} },
-	{ "movetogroup7", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 7} },
-	{ "movetogroup8", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 8} },
-	{ "movetogroup9", kbfunc_client_movetogroup, KBFLAG_NEEDCLIENT,
-	    {.i = 9} },
+	{ "movetogroup1", kbfunc_client_movetogroup, CWM_WIN, {.i = 1} },
+	{ "movetogroup2", kbfunc_client_movetogroup, CWM_WIN, {.i = 2} },
+	{ "movetogroup3", kbfunc_client_movetogroup, CWM_WIN, {.i = 3} },
+	{ "movetogroup4", kbfunc_client_movetogroup, CWM_WIN, {.i = 4} },
+	{ "movetogroup5", kbfunc_client_movetogroup, CWM_WIN, {.i = 5} },
+	{ "movetogroup6", kbfunc_client_movetogroup, CWM_WIN, {.i = 6} },
+	{ "movetogroup7", kbfunc_client_movetogroup, CWM_WIN, {.i = 7} },
+	{ "movetogroup8", kbfunc_client_movetogroup, CWM_WIN, {.i = 8} },
+	{ "movetogroup9", kbfunc_client_movetogroup, CWM_WIN, {.i = 9} },
 	{ "nogroup", kbfunc_client_nogroup, 0, {0} },
 	{ "cyclegroup", kbfunc_client_cyclegroup, 0, {.i = CWM_CYCLE} },
 	{ "rcyclegroup", kbfunc_client_cyclegroup, 0, {.i = CWM_RCYCLE} },
-	{ "cycleingroup", kbfunc_client_cycle, KBFLAG_NEEDCLIENT,
+	{ "cycleingroup", kbfunc_client_cycle, CWM_WIN,
 	    {.i = CWM_CYCLE|CWM_INGROUP} },
-	{ "rcycleingroup", kbfunc_client_cycle, KBFLAG_NEEDCLIENT,
+	{ "rcycleingroup", kbfunc_client_cycle, CWM_WIN,
 	    {.i = CWM_RCYCLE|CWM_INGROUP} },
-	{ "grouptoggle", kbfunc_client_grouptoggle, KBFLAG_NEEDCLIENT, {0}},
-	{ "fullscreen", kbfunc_client_fullscreen, KBFLAG_NEEDCLIENT, {0} },
-	{ "maximize", kbfunc_client_maximize, KBFLAG_NEEDCLIENT, {0} },
-	{ "vmaximize", kbfunc_client_vmaximize, KBFLAG_NEEDCLIENT, {0} },
-	{ "hmaximize", kbfunc_client_hmaximize, KBFLAG_NEEDCLIENT, {0} },
-	{ "freeze", kbfunc_client_freeze, KBFLAG_NEEDCLIENT, {0} },
+	{ "grouptoggle", kbfunc_client_grouptoggle, CWM_WIN, {0}},
+	{ "fullscreen", kbfunc_client_fullscreen, CWM_WIN, {0} },
+	{ "maximize", kbfunc_client_maximize, CWM_WIN, {0} },
+	{ "vmaximize", kbfunc_client_vmaximize, CWM_WIN, {0} },
+	{ "hmaximize", kbfunc_client_hmaximize, CWM_WIN, {0} },
+	{ "freeze", kbfunc_client_freeze, CWM_WIN, {0} },
 	{ "restart", kbfunc_restart, 0, {0} },
 	{ "quit", kbfunc_quit_wm, 0, {0} },
 	{ "exec", kbfunc_exec, 0, {.i = CWM_EXEC_PROGRAM} },
@@ -389,37 +380,37 @@ static struct {
 	{ "ssh", kbfunc_ssh, 0, {0} },
 	{ "terminal", kbfunc_term, 0, {0} },
 	{ "lock", kbfunc_lock, 0, {0} },
-	{ "moveup", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "moveup", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_UP|CWM_MOVE)} },
-	{ "movedown", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "movedown", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_DOWN|CWM_MOVE)} },
-	{ "moveright", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "moveright", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_RIGHT|CWM_MOVE)} },
-	{ "moveleft", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "moveleft", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_LEFT|CWM_MOVE)} },
-	{ "bigmoveup", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigmoveup", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_UP|CWM_MOVE|CWM_BIGMOVE)} },
-	{ "bigmovedown", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigmovedown", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_DOWN|CWM_MOVE|CWM_BIGMOVE)} },
-	{ "bigmoveright", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigmoveright", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_RIGHT|CWM_MOVE|CWM_BIGMOVE)} },
-	{ "bigmoveleft", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigmoveleft", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_LEFT|CWM_MOVE|CWM_BIGMOVE)} },
-	{ "resizeup", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "resizeup", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_UP|CWM_RESIZE)} },
-	{ "resizedown", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "resizedown", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_DOWN|CWM_RESIZE)} },
-	{ "resizeright", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "resizeright", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_RIGHT|CWM_RESIZE)} },
-	{ "resizeleft", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "resizeleft", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_LEFT|CWM_RESIZE)} },
-	{ "bigresizeup", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigresizeup", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_UP|CWM_RESIZE|CWM_BIGMOVE)} },
-	{ "bigresizedown", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigresizedown", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_DOWN|CWM_RESIZE|CWM_BIGMOVE)} },
-	{ "bigresizeright", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigresizeright", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_RIGHT|CWM_RESIZE|CWM_BIGMOVE)} },
-	{ "bigresizeleft", kbfunc_client_moveresize, KBFLAG_NEEDCLIENT,
+	{ "bigresizeleft", kbfunc_client_moveresize, CWM_WIN,
 	    {.i = (CWM_LEFT|CWM_RESIZE|CWM_BIGMOVE)} },
 	{ "ptrmoveup", kbfunc_client_moveresize, 0,
 	    {.i = (CWM_UP|CWM_PTRMOVE)} },
@@ -437,10 +428,8 @@ static struct {
 	    {.i = (CWM_LEFT|CWM_PTRMOVE|CWM_BIGMOVE)} },
 	{ "bigptrmoveright", kbfunc_client_moveresize, 0,
 	    {.i = (CWM_RIGHT|CWM_PTRMOVE|CWM_BIGMOVE)} },
-	{ "htile", kbfunc_tile, KBFLAG_NEEDCLIENT,
-	    {.i = CWM_TILE_HORIZ } },
-	{ "vtile", kbfunc_tile, KBFLAG_NEEDCLIENT,
-	    {.i = CWM_TILE_VERT } },
+	{ "htile", kbfunc_tile, CWM_WIN, {.i = CWM_TILE_HORIZ} },
+	{ "vtile", kbfunc_tile, CWM_WIN, {.i = CWM_TILE_VERT} },
 };
 
 static struct {
@@ -542,20 +531,17 @@ static struct {
 	int		 flags;
 	union arg	 argument;
 } name_to_mousefunc[] = {
-	{ "window_move", mousefunc_client_move, MOUSEBIND_CTX_WIN, {0} },
-	{ "window_resize", mousefunc_client_resize, MOUSEBIND_CTX_WIN, {0} },
-	{ "window_grouptoggle", mousefunc_client_grouptoggle,
-	    MOUSEBIND_CTX_WIN, {0} },
-	{ "window_lower", mousefunc_client_lower, MOUSEBIND_CTX_WIN, {0} },
-	{ "window_raise", mousefunc_client_raise, MOUSEBIND_CTX_WIN, {0} },
-	{ "window_hide", mousefunc_client_hide, MOUSEBIND_CTX_WIN, {0} },
-	{ "cyclegroup", mousefunc_client_cyclegroup,
-	    MOUSEBIND_CTX_ROOT, {.i = CWM_CYCLE} },
-	{ "rcyclegroup", mousefunc_client_cyclegroup,
-	    MOUSEBIND_CTX_ROOT, {.i = CWM_RCYCLE} },
-	{ "menu_group", mousefunc_menu_group, MOUSEBIND_CTX_ROOT, {0} },
-	{ "menu_unhide", mousefunc_menu_unhide, MOUSEBIND_CTX_ROOT, {0} },
-	{ "menu_cmd", mousefunc_menu_cmd, MOUSEBIND_CTX_ROOT, {0} },
+	{ "window_move", mousefunc_client_move, CWM_WIN, {0} },
+	{ "window_resize", mousefunc_client_resize, CWM_WIN, {0} },
+	{ "window_grouptoggle", mousefunc_client_grouptoggle, CWM_WIN, {0} },
+	{ "window_lower", mousefunc_client_lower, CWM_WIN, {0} },
+	{ "window_raise", mousefunc_client_raise, CWM_WIN, {0} },
+	{ "window_hide", mousefunc_client_hide, CWM_WIN, {0} },
+	{ "cyclegroup", mousefunc_client_cyclegroup, 0, {.i = CWM_CYCLE} },
+	{ "rcyclegroup", mousefunc_client_cyclegroup, 0, {.i = CWM_RCYCLE} },
+	{ "menu_group", mousefunc_menu_group, 0, {0} },
+	{ "menu_unhide", mousefunc_menu_unhide, 0, {0} },
+	{ "menu_cmd", mousefunc_menu_cmd, 0, {0} },
 };
 
 int
@@ -639,9 +625,8 @@ conf_grab_mouse(Window win)
 	xu_btn_ungrab(win);
 
 	TAILQ_FOREACH(mb, &Conf.mousebindingq, entry) {
-		if (mb->flags != MOUSEBIND_CTX_WIN)
-			continue;
-		xu_btn_grab(win, mb->modmask, mb->button);
+		if (mb->flags & CWM_WIN)
+			xu_btn_grab(win, mb->modmask, mb->button);
 	}
 }
 
diff --git a/xevents.c b/xevents.c
index 5967c39..c5c1c7e 100644
--- a/xevents.c
+++ b/xevents.c
@@ -235,11 +235,11 @@ xev_handle_buttonpress(XEvent *ee)
 
 	if (mb == NULL)
 		return;
-	if (mb->flags == MOUSEBIND_CTX_WIN) {
+	if (mb->flags & CWM_WIN) {
 		if (((cc = client_find(e->window)) == NULL) &&
 		    (cc = client_current()) == NULL)
 			return;
-	} else { /* (mb->flags == MOUSEBIND_CTX_ROOT) */
+	} else {
 		if (e->window != e->root)
 			return;
 		cc = &fakecc;
@@ -287,7 +287,7 @@ xev_handle_keypress(XEvent *ee)
 
 	if (kb == NULL)
 		return;
-	if (kb->flags & KBFLAG_NEEDCLIENT) {
+	if (kb->flags & CWM_WIN) {
 		if (((cc = client_find(e->window)) == NULL) &&
 		    (cc = client_current()) == NULL)
 			return;