elput: Add API functions to get/set the scroll method for a touchpad

device

This patch adds API functions which can be used to get or set the
scroll method used for a given device. Scroll method defines when to
generate scroll axis events

@feature

Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
Chris Michael 2016-12-14 08:59:56 -05:00
parent 68e1c9e0a0
commit 0f81e32433
2 changed files with 47 additions and 0 deletions

View File

@ -514,6 +514,33 @@ EAPI Eina_Bool elput_touch_dwt_enabled_set(Elput_Device *device, Eina_Bool enabl
*/
EAPI Eina_Bool elput_touch_dwt_enabled_get(Elput_Device *device);
/**
* Set the scroll method used for this device. The scroll method defines when
* to generate scroll axis events instead of pointer motion events.
*
* @param device
* @param method
*
* @return EINA_TRUE on success, EINA_FALSE otherwise
*
* @ingroup Elput_Touch_Group
* @since 1.19
*/
EAPI Eina_Bool elput_touch_scroll_method_set(Elput_Device *device, int method);
/**
* Get the current scroll method set on a device
*
* @param device
*
* @return The current scroll method
*
* @ingroup Elput_Touch_Group
* @since 1.19
*/
EAPI int elput_touch_scroll_method_get(Elput_Device *device);
# endif
# undef EAPI

View File

@ -98,3 +98,23 @@ elput_touch_dwt_enabled_get(Elput_Device *device)
return libinput_device_config_dwt_get_enabled(device->device);
}
EAPI Eina_Bool
elput_touch_scroll_method_set(Elput_Device *device, int method)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(device, EINA_FALSE);
if (libinput_device_config_scroll_set_method(device->device, method) ==
LIBINPUT_CONFIG_STATUS_SUCCESS)
return EINA_TRUE;
return EINA_FALSE;
}
EAPI int
elput_touch_scroll_method_get(Elput_Device *device)
{
EINA_SAFETY_ON_NULL_RETURN_VAL(device, -1);
return libinput_device_config_scroll_get_method(device->device);
}