add mouse.coords_get()
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
This commit is contained in:
parent
f125ad57a9
commit
4360fc51b2
27
mouse.c
27
mouse.c
|
@ -963,6 +963,32 @@ mouse_client_resize(client_t *c, corner_t corner, bool infobox)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Set mouse coordinates.
|
||||||
|
* \param L The Lua VM state.
|
||||||
|
*
|
||||||
|
* \luastack
|
||||||
|
* \lparam The x coordinate.
|
||||||
|
* \lparam The y coordinate.
|
||||||
|
*/
|
||||||
|
static int
|
||||||
|
luaA_mouse_coords_get(lua_State *L)
|
||||||
|
{
|
||||||
|
int mouse_x, mouse_y;
|
||||||
|
xcb_window_t root;
|
||||||
|
|
||||||
|
root = xutil_screen_get(globalconf.connection, globalconf.default_screen)->root;
|
||||||
|
|
||||||
|
if(!mouse_query_pointer(root, &mouse_x, &mouse_y))
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
lua_newtable(L);
|
||||||
|
lua_pushnumber(L, mouse_x);
|
||||||
|
lua_setfield(L, -2, "x");
|
||||||
|
lua_pushnumber(L, mouse_y);
|
||||||
|
lua_setfield(L, -2, "y");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
/** Set mouse coordinates.
|
/** Set mouse coordinates.
|
||||||
* \param L The Lua VM state.
|
* \param L The Lua VM state.
|
||||||
*
|
*
|
||||||
|
@ -1107,6 +1133,7 @@ const struct luaL_reg awesome_mouse_methods[] =
|
||||||
{ "new", luaA_mouse_new },
|
{ "new", luaA_mouse_new },
|
||||||
{ "screen_get", luaA_mouse_screen_get },
|
{ "screen_get", luaA_mouse_screen_get },
|
||||||
{ "coords_set", luaA_mouse_coords_set },
|
{ "coords_set", luaA_mouse_coords_set },
|
||||||
|
{ "coords_get", luaA_mouse_coords_get },
|
||||||
{ NULL, NULL }
|
{ NULL, NULL }
|
||||||
};
|
};
|
||||||
const struct luaL_reg awesome_mouse_meta[] =
|
const struct luaL_reg awesome_mouse_meta[] =
|
||||||
|
|
Loading…
Reference in New Issue