Commit 8857b19d authored by Carlos Garnacho's avatar Carlos Garnacho
Browse files

evdev: Add function to get the libinput_device from a ClutterInputDevice

This may be useful for deeper libinput integration that's not in the scope
of Clutter.

https://bugzilla.gnome.org/show_bug.cgi?id=728967
parent 91ee1cec
......@@ -28,6 +28,7 @@
#include <glib-object.h>
#include <xkbcommon/xkbcommon.h>
#include <clutter/clutter.h>
#include <libinput.h>
G_BEGIN_DECLS
......@@ -112,6 +113,8 @@ void clutter_evdev_add_filter (ClutterEvdevFilterFunc func,
CLUTTER_AVAILABLE_IN_1_20
void clutter_evdev_remove_filter (ClutterEvdevFilterFunc func,
gpointer data);
CLUTTER_AVAILABLE_IN_1_20
struct libinput_device * clutter_evdev_input_device_get_libinput_device (ClutterInputDevice *device);
G_END_DECLS
......
......@@ -29,6 +29,7 @@
#include "clutter/clutter-device-manager-private.h"
#include "clutter-private.h"
#include "clutter-evdev.h"
#include "clutter-input-device-evdev.h"
......@@ -198,3 +199,26 @@ _clutter_input_device_evdev_determine_type (struct libinput_device *ldev)
else
return CLUTTER_EXTENSION_DEVICE;
}
/**
* clutter_evdev_input_device_get_libinput_device:
* @device: a #ClutterInputDevice
*
* Retrieves the libinput_device struct held in @device.
*
* Returns: The libinput_device struct
*
* Since: 1.20
* Stability: unstable
**/
struct libinput_device *
clutter_evdev_input_device_get_libinput_device (ClutterInputDevice *device)
{
ClutterInputDeviceEvdev *device_evdev;
g_return_val_if_fail (CLUTTER_IS_INPUT_DEVICE_EVDEV (device), NULL);
device_evdev = CLUTTER_INPUT_DEVICE_EVDEV (device);
return device_evdev->libinput_device;
}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment