Move kb pointer movement out of the kbfunc_client_moveresize since it's

got nothing to do with clients, thus doing flags work causes lots of
waste and almost useless jumpy pointer movements; while here, split out
move and resize since they share almost no code, just like mouse client
move/resize; factor out amount and factor. Still wonder why this is
here, but it works now.
This commit is contained in:
okan
2015-11-12 18:26:41 +00:00
parent a2c066e447
commit 9a48836ceb
3 changed files with 149 additions and 133 deletions

96
conf.c
View File

@@ -426,54 +426,54 @@ static const struct {
{ "ssh", kbfunc_menu_ssh, CWM_CONTEXT_SCREEN, {0} },
{ "terminal", kbfunc_exec_term, CWM_CONTEXT_SCREEN, {0} },
{ "lock", kbfunc_exec_lock, CWM_CONTEXT_SCREEN, {0} },
{ "moveup", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP | CWM_MOVE)} },
{ "movedown", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN | CWM_MOVE)} },
{ "moveright", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT | CWM_MOVE)} },
{ "moveleft", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT | CWM_MOVE)} },
{ "bigmoveup", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP | CWM_MOVE | CWM_BIGMOVE)} },
{ "bigmovedown", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN | CWM_MOVE | CWM_BIGMOVE)} },
{ "bigmoveright", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT | CWM_MOVE | CWM_BIGMOVE)} },
{ "bigmoveleft", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT | CWM_MOVE | CWM_BIGMOVE)} },
{ "resizeup", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP | CWM_RESIZE)} },
{ "resizedown", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN | CWM_RESIZE)} },
{ "resizeright", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT | CWM_RESIZE)} },
{ "resizeleft", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT | CWM_RESIZE)} },
{ "bigresizeup", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP | CWM_RESIZE | CWM_BIGMOVE)} },
{ "bigresizedown", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN | CWM_RESIZE | CWM_BIGMOVE)} },
{ "bigresizeright", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT | CWM_RESIZE | CWM_BIGMOVE)} },
{ "bigresizeleft", kbfunc_client_moveresize, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT | CWM_RESIZE | CWM_BIGMOVE)} },
{ "ptrmoveup", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_UP | CWM_PTRMOVE)} },
{ "ptrmovedown", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_DOWN | CWM_PTRMOVE)} },
{ "ptrmoveleft", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_LEFT | CWM_PTRMOVE)} },
{ "ptrmoveright", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_RIGHT | CWM_PTRMOVE)} },
{ "bigptrmoveup", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_UP | CWM_PTRMOVE | CWM_BIGMOVE)} },
{ "bigptrmovedown", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_DOWN | CWM_PTRMOVE | CWM_BIGMOVE)} },
{ "bigptrmoveleft", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_LEFT | CWM_PTRMOVE | CWM_BIGMOVE)} },
{ "bigptrmoveright", kbfunc_client_moveresize, CWM_CONTEXT_SCREEN,
{.i = (CWM_RIGHT | CWM_PTRMOVE | CWM_BIGMOVE)} },
{ "moveup", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP)} },
{ "movedown", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN)} },
{ "moveright", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT)} },
{ "moveleft", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT)} },
{ "bigmoveup", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP | CWM_BIGAMOUNT)} },
{ "bigmovedown", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN | CWM_BIGAMOUNT)} },
{ "bigmoveright", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT | CWM_BIGAMOUNT)} },
{ "bigmoveleft", kbfunc_client_move, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT | CWM_BIGAMOUNT)} },
{ "resizeup", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP)} },
{ "resizedown", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN)} },
{ "resizeright", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT)} },
{ "resizeleft", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT)} },
{ "bigresizeup", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_UP | CWM_BIGAMOUNT)} },
{ "bigresizedown", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_DOWN | CWM_BIGAMOUNT)} },
{ "bigresizeright", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_RIGHT | CWM_BIGAMOUNT)} },
{ "bigresizeleft", kbfunc_client_resize, CWM_CONTEXT_CLIENT,
{.i = (CWM_LEFT | CWM_BIGAMOUNT)} },
{ "ptrmoveup", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_UP)} },
{ "ptrmovedown", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_DOWN)} },
{ "ptrmoveleft", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_LEFT)} },
{ "ptrmoveright", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_RIGHT)} },
{ "bigptrmoveup", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_UP | CWM_BIGAMOUNT)} },
{ "bigptrmovedown", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_DOWN | CWM_BIGAMOUNT)} },
{ "bigptrmoveleft", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_LEFT | CWM_BIGAMOUNT)} },
{ "bigptrmoveright", kbfunc_ptrmove, CWM_CONTEXT_SCREEN,
{.i = (CWM_RIGHT | CWM_BIGAMOUNT)} },
{ "htile", kbfunc_client_tile, CWM_CONTEXT_CLIENT,
{.i = CWM_CLIENT_TILE_HORIZ} },
{ "vtile", kbfunc_client_tile, CWM_CONTEXT_CLIENT,