touchpad: use the evdev device's filter struct
[platform/upstream/libinput.git] / src / evdev.h
index e1506d2..aecbd95 100644 (file)
@@ -53,6 +53,7 @@ enum evdev_device_seat_capability {
 enum evdev_device_tags {
        EVDEV_TAG_EXTERNAL_MOUSE = (1 << 0),
        EVDEV_TAG_INTERNAL_TOUCHPAD = (1 << 1),
+       EVDEV_TAG_TRACKPOINT = (1 << 2),
 };
 
 struct mt_slot {
@@ -110,6 +111,7 @@ struct evdev_device {
        enum evdev_device_tags tags;
 
        int is_mt;
+       int suspended;
 
        struct {
                struct motion_filter *filter;
@@ -145,6 +147,14 @@ struct evdev_dispatch_interface {
        void (*device_removed)(struct evdev_device *device,
                               struct evdev_device *removed_device);
 
+       /* A device was suspended */
+       void (*device_suspended)(struct evdev_device *device,
+                                struct evdev_device *suspended_device);
+
+       /* A device was resumed */
+       void (*device_resumed)(struct evdev_device *device,
+                              struct evdev_device *resumed_device);
+
        /* Tag device with one of EVDEV_TAG */
        void (*tag_device)(struct evdev_device *device,
                           struct udev_device *udev_device);
@@ -173,9 +183,6 @@ struct evdev_dispatch *
 evdev_mt_touchpad_create(struct evdev_device *device);
 
 void
-evdev_device_proces_event(struct libinput_event *event);
-
-void
 evdev_device_led_update(struct evdev_device *device, enum libinput_led leds);
 
 int
@@ -228,6 +235,12 @@ int
 evdev_device_resume(struct evdev_device *device);
 
 void
+evdev_notify_suspended_device(struct evdev_device *device);
+
+void
+evdev_notify_resumed_device(struct evdev_device *device);
+
+void
 evdev_keyboard_notify_key(struct evdev_device *device,
                          uint32_t time,
                          int key,