illogict - patch for right lefty mouse...

- ecore-x-pointer_mapping_support.patch: add support for modifying
pointer button mapping



SVN revision: 36113
This commit is contained in:
Carsten Haitzler 2008-09-20 02:19:38 +00:00
parent 8d175a12e8
commit 1dce18e33a
3 changed files with 66 additions and 1 deletions

View File

@ -1584,6 +1584,10 @@ EAPI int ecore_x_pointer_control_set(int accel_num, int accel_denom, int thresh
EAPI void ecore_x_pointer_control_get_prefetch(void);
EAPI void ecore_x_pointer_control_get_fetch(void);
EAPI int ecore_x_pointer_control_get(int *accel_num, int *accel_denom, int *threshold);
EAPI int ecore_x_pointer_mapping_set(unsigned char *map, int nmap);
EAPI void ecore_x_pointer_mapping_get_prefetch(void);
EAPI void ecore_x_pointer_mapping_get_fetch(void);
EAPI int ecore_x_pointer_mapping_get(unsigned char *map, int nmap);
EAPI int ecore_x_pointer_grab(Ecore_X_Window win);
EAPI int ecore_x_pointer_confine_grab(Ecore_X_Window win);
EAPI void ecore_x_pointer_ungrab(void);

View File

@ -1266,6 +1266,56 @@ ecore_x_pointer_control_get(int *accel_num,
return 1;
}
EAPI int
ecore_x_pointer_mapping_set(unsigned char *map,
int nmap)
{
xcb_set_pointer_mapping(_ecore_xcb_conn, nmap, map);
return 1;
}
EAPI void
ecore_x_pointer_mapping_get_prefetch(void)
{
xcb_get_pointer_mapping_cookie_t cookie;
cookie = xcb_get_pointer_mapping_unchecked(_ecore_xcb_conn);
_ecore_xcb_cookie_cache(cookie.sequence);
}
EAPI void
ecore_x_pointer_mapping_get_fetch(void)
{
xcb_get_pointer_mapping_cookie_t cookie;
xcb_get_pointer_mapping_reply_t *reply;
cookie.sequence = _ecore_xcb_cookie_get();
reply = xcb_get_pointer_mapping_reply(_ecore_xcb_conn, cookie, NULL);
_ecore_xcb_reply_cache(reply);
}
EAPI int
ecore_x_pointer_mapping_get(unsigned char *map,
int nmap)
{
xcb_get_pointer_mapping_reply_t *reply;
int i;
uint8_t tmp;
reply = _ecore_xcb_reply_get();
if (!reply) return 0;
if (nmap > xcb_get_pointer_mapping_map_length(reply))
return 0;
tmp = xcb_get_pointer_mapping_map(reply);
for (i = 0; i < nmap; i++)
map[i] = tmp[i];
return 1;
}
EAPI int
ecore_x_pointer_grab(Ecore_X_Window window)
{

View File

@ -1013,7 +1013,6 @@ ecore_x_pointer_control_set(int accel_num, int accel_denom, int threshold)
accel_num, accel_denom, threshold);
}
EAPI int
ecore_x_pointer_control_get(int *accel_num, int *accel_denom, int *threshold)
{
@ -1021,6 +1020,18 @@ ecore_x_pointer_control_get(int *accel_num, int *accel_denom, int *threshold)
accel_num, accel_denom, threshold);
}
EAPI int
ecore_x_pointer_mapping_set(unsigned char *map, int nmap)
{
return XSetPointerMapping(_ecore_x_disp, map, nmap);
}
EAPI int
ecore_x_pointer_mapping_get(unsigned char *map, int nmap)
{
return XGetPointerMapping(_ecore_x_disp, map, nmap);
}
EAPI int
ecore_x_pointer_grab(Ecore_X_Window win)
{