libinput.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2013 Jonas Ådahl
3  * Copyright © 2013-2015 Red Hat, Inc.
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice (including the next
13  * paragraph) shall be included in all copies or substantial portions of the
14  * Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22  * DEALINGS IN THE SOFTWARE.
23  */
24 
25 #ifndef LIBINPUT_H
26 #define LIBINPUT_H
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 #include <stdlib.h>
33 #include <stdint.h>
34 #include <stdarg.h>
35 #include <libudev.h>
36 
37 #define LIBINPUT_ATTRIBUTE_PRINTF(_format, _args) \
38  __attribute__ ((format (printf, _format, _args)))
39 #define LIBINPUT_ATTRIBUTE_DEPRECATED __attribute__ ((deprecated))
40 
48 struct libinput;
49 
58 
68 
77 
97 
109 
117 
125 
134 
146 
160 
173 
183 };
184 
199 };
200 
210 };
211 
221 };
222 
232 };
233 
249 };
250 
287 };
288 
304 };
305 
321 };
322 
357 };
358 
378 };
379 
394 };
395 
424 
440 int
442 
467  unsigned int index);
468 
481 unsigned int
483 
501 unsigned int
503 
523 unsigned int
525 
538 int
540  unsigned int button);
541 
554 int
556  unsigned int ring);
557 
570 int
572  unsigned int strip);
573 
592 int
594  unsigned int button);
595 
609  struct libinput_tablet_pad_mode_group *group);
610 
624  struct libinput_tablet_pad_mode_group *group);
625 
639 void
641  struct libinput_tablet_pad_mode_group *group,
642  void *user_data);
643 
655 void *
657  struct libinput_tablet_pad_mode_group *group);
658 
673 };
674 
689 
705 };
706 
715 struct libinput_event_switch;
716 
729 
739 
745 
747 
781 
795 
809 
824 
834 
925 
949 
957 
970 
982 
987 };
988 
1005 void
1006 libinput_event_destroy(struct libinput_event *event);
1007 
1017 
1026 struct libinput *
1028 
1042 struct libinput_device *
1044 
1055 struct libinput_event_pointer *
1057 
1068 struct libinput_event_keyboard *
1070 
1081 struct libinput_event_touch *
1083 
1101 struct libinput_event_gesture *
1103 
1118 
1131 
1144 struct libinput_event_switch *
1146 
1160 
1166 struct libinput_event *
1168 
1184 uint32_t
1186 
1195 uint64_t
1197 
1203 uint32_t
1205 
1211 enum libinput_key_state
1213 
1219 struct libinput_event *
1221 
1234 uint32_t
1236  struct libinput_event_keyboard *event);
1237 
1253 uint32_t
1255 
1264 uint64_t
1266 
1285 double
1287 
1306 double
1308 
1330 double
1332  struct libinput_event_pointer *event);
1333 
1355 double
1357  struct libinput_event_pointer *event);
1358 
1374 double
1376 
1392 double
1394 
1412 double
1414  struct libinput_event_pointer *event,
1415  uint32_t width);
1416 
1434 double
1436  struct libinput_event_pointer *event,
1437  uint32_t height);
1438 
1451 uint32_t
1453 
1468 
1482 uint32_t
1484  struct libinput_event_pointer *event);
1485 
1508 int
1510  enum libinput_pointer_axis axis);
1511 
1536 double
1538  enum libinput_pointer_axis axis);
1539 
1588 
1614 double
1616  enum libinput_pointer_axis axis);
1617 
1666 double
1668  enum libinput_pointer_axis axis);
1669 
1706 double
1708  enum libinput_pointer_axis axis);
1709 
1715 struct libinput_event *
1717 
1732 uint32_t
1734 
1743 uint64_t
1745 
1765 int32_t
1767 
1787 int32_t
1789 
1807 double
1809 
1827 double
1829 
1847 double
1849  uint32_t width);
1850 
1868 double
1870  uint32_t height);
1871 
1877 struct libinput_event *
1879 
1902 uint32_t
1903 libinput_event_gesture_get_time(struct libinput_event_gesture *event);
1904 
1913 uint64_t
1914 libinput_event_gesture_get_time_usec(struct libinput_event_gesture *event);
1915 
1921 struct libinput_event *
1922 libinput_event_gesture_get_base_event(struct libinput_event_gesture *event);
1923 
1939 int
1940 libinput_event_gesture_get_finger_count(struct libinput_event_gesture *event);
1941 
1956 int
1957 libinput_event_gesture_get_cancelled(struct libinput_event_gesture *event);
1958 
1974 double
1975 libinput_event_gesture_get_dx(struct libinput_event_gesture *event);
1976 
1992 double
1993 libinput_event_gesture_get_dy(struct libinput_event_gesture *event);
1994 
2013 double
2015  struct libinput_event_gesture *event);
2016 
2035 double
2037  struct libinput_event_gesture *event);
2038 
2065 double
2066 libinput_event_gesture_get_scale(struct libinput_event_gesture *event);
2067 
2089 double
2090 libinput_event_gesture_get_angle_delta(struct libinput_event_gesture *event);
2091 
2116 struct libinput_event *
2118 
2138 int
2140  struct libinput_event_tablet_tool *event);
2141 
2161 int
2163  struct libinput_event_tablet_tool *event);
2164 
2184 int
2186  struct libinput_event_tablet_tool *event);
2187 
2209 int
2211  struct libinput_event_tablet_tool *event);
2212 
2232 int
2234  struct libinput_event_tablet_tool *event);
2235 
2255 int
2257  struct libinput_event_tablet_tool *event);
2277 int
2279  struct libinput_event_tablet_tool *event);
2299 int
2301  struct libinput_event_tablet_tool *event);
2302 
2320 int
2322  struct libinput_event_tablet_tool *event);
2323 
2341 int
2343  struct libinput_event_tablet_tool *event);
2344 
2364 int
2366  struct libinput_event_tablet_tool *event);
2367 
2384 double
2386 
2403 double
2405 
2422 double
2424 
2441 double
2443 
2457 double
2459 
2473 double
2475 
2493 double
2495 
2513 double
2515 
2535 double
2537 
2553 double
2555 
2571 double
2573 
2589 double
2591 
2602 double
2604  struct libinput_event_tablet_tool *event);
2605 
2618 int
2620  struct libinput_event_tablet_tool *event);
2621 
2641 double
2643  uint32_t width);
2644 
2664 double
2666  uint32_t height);
2667 
2690 struct libinput_tablet_tool *
2692 
2721 
2737 
2752 uint32_t
2754 
2770 
2786 uint32_t
2788 
2800 uint32_t
2802 
2814 uint64_t
2816 
2842 
2862 uint64_t
2864 
2878 struct libinput_tablet_tool *
2880 
2895 struct libinput_tablet_tool *
2897 
2908 int
2910 
2921 int
2923 
2934 int
2936 
2947 int
2949 
2960 int
2962 
2974 int
2976 
2987 int
2989 
3003 int
3005  uint32_t code);
3006 
3023 int
3025 
3062 uint64_t
3064 
3077 void *
3079 
3090 void
3092  void *user_data);
3093 
3110 struct libinput_event *
3112 
3135 double
3137 
3154 unsigned int
3156 
3175 
3198 double
3200 
3217 unsigned int
3219 
3238 
3259 uint32_t
3261 
3278 
3297 uint32_t
3299 
3314 enum libinput_key_state
3316 
3349 unsigned int
3351 
3377 
3389 uint32_t
3391 
3403 uint64_t
3405 
3427 enum libinput_switch
3429 
3447 
3455 struct libinput_event *
3457 
3469 uint32_t
3471 
3483 uint64_t
3485 
3513  int (*open_restricted)(const char *path, int flags, void *user_data);
3521  void (*close_restricted)(int fd, void *user_data);
3522 };
3523 
3537 struct libinput *
3538 libinput_udev_create_context(const struct libinput_interface *interface,
3539  void *user_data,
3540  struct udev *udev);
3541 
3563 int
3565  const char *seat_id);
3566 
3586 struct libinput *
3587 libinput_path_create_context(const struct libinput_interface *interface,
3588  void *user_data);
3589 
3610 struct libinput_device *
3612  const char *path);
3613 
3632 void
3634 
3643 int
3645 
3663 int
3665 
3677 struct libinput_event *
3679 
3693 
3705 void
3707  void *user_data);
3708 
3719 void *
3721 
3733 int
3735 
3745 void
3747 
3757 struct libinput *
3758 libinput_ref(struct libinput *libinput);
3759 
3791 struct libinput *
3793 
3809 void
3811  enum libinput_log_priority priority);
3812 
3829 
3844 typedef void (*libinput_log_handler)(struct libinput *libinput,
3845  enum libinput_log_priority priority,
3846  const char *format, va_list args)
3848 
3864 void
3866  libinput_log_handler log_handler);
3867 
3889 struct libinput_seat *
3890 libinput_seat_ref(struct libinput_seat *seat);
3891 
3903 struct libinput_seat *
3904 libinput_seat_unref(struct libinput_seat *seat);
3905 
3917 void
3918 libinput_seat_set_user_data(struct libinput_seat *seat, void *user_data);
3919 
3929 void *
3931 
3940 struct libinput *
3942 
3959 const char *
3961 
3971 const char *
3973 
3989 struct libinput_device *
3990 libinput_device_ref(struct libinput_device *device);
3991 
4003 struct libinput_device *
4004 libinput_device_unref(struct libinput_device *device);
4005 
4017 void
4018 libinput_device_set_user_data(struct libinput_device *device, void *user_data);
4019 
4029 void *
4031 
4040 struct libinput *
4042 
4103 struct libinput_device_group *
4105 
4117 const char *
4119 
4133 const char *
4135 
4144 unsigned int
4146 
4155 unsigned int
4157 
4177 const char *
4179 
4200 struct libinput_seat *
4202 
4228 int
4230  const char *name);
4231 
4251 struct udev_device *
4253 
4264 void
4266  enum libinput_led leds);
4267 
4275 int
4277  enum libinput_device_capability capability);
4278 
4293 int
4295  double *width,
4296  double *height);
4297 
4310 int
4311 libinput_device_pointer_has_button(struct libinput_device *device, uint32_t code);
4312 
4325 int
4327  uint32_t code);
4328 
4342 int
4344 
4359 int
4361  enum libinput_switch sw);
4362 
4377 int
4379 
4394 int
4396 
4411 int
4413 
4428 int
4430  uint32_t code);
4431 
4444 struct libinput_device_group *
4446 
4460 struct libinput_device_group *
4462 
4474 void
4476  void *user_data);
4477 
4488 void *
4490 
4542 };
4543 
4553 const char *
4555 
4564 };
4565 
4581 int
4583 
4606  enum libinput_config_tap_state enable);
4607 
4626 
4643 
4654 };
4655 
4689 
4711 
4733 
4754 };
4755 
4775  enum libinput_config_drag_state enable);
4776 
4794 
4814 
4823 };
4824 
4849  enum libinput_config_drag_lock_state enable);
4850 
4870 
4893 
4906 int
4908 
4960  const float matrix[6]);
4961 
4978 int
4980  float matrix[6]);
4981 
5002 int
5004  float matrix[6]);
5005 
5039 };
5040 
5055 uint32_t
5057 
5088  uint32_t mode);
5089 
5109 uint32_t
5111 
5125 uint32_t
5127 
5141 int
5143 
5166  double speed);
5167 
5183 double
5185 
5200 double
5202 
5222 
5228 };
5229 
5242 uint32_t
5244 
5260  enum libinput_config_accel_profile profile);
5261 
5275 
5289 
5319 int
5321 
5338  int enable);
5352 int
5354 
5368 int
5370 
5384 int
5386 
5412  int left_handed);
5413 
5427 int
5429 
5443 int
5445 
5467 };
5468 
5484 uint32_t
5486 
5509  enum libinput_config_click_method method);
5527 
5545 
5560 };
5561 
5582 int
5584  struct libinput_device *device);
5585 
5610  struct libinput_device *device,
5612 
5638  struct libinput_device *device);
5639 
5666  struct libinput_device *device);
5667 
5695 };
5696 
5714 uint32_t
5716 
5743  enum libinput_config_scroll_method method);
5744 
5763 
5782 
5820  uint32_t button);
5821 
5846 uint32_t
5848 
5869 uint32_t
5871 
5875 };
5876 
5901 
5926 
5946 
5955 };
5956 
5972 int
5974 
5998  enum libinput_config_dwt_state enable);
5999 
6017 
6035 
6046 };
6047 
6066 int
6068 
6094  enum libinput_config_dwtp_state enable);
6095 
6115 
6135 
6150 int
6152 
6187  unsigned int degrees_cw);
6188 
6205 unsigned int
6207 
6224 unsigned int
6226 
6227 #ifdef __cplusplus
6228 }
6229 #endif
6230 #endif /* LIBINPUT_H */
@ LIBINPUT_EVENT_NONE
This is not a real event type, and is only used to tell the user that no new event is available in th...
Definition: libinput.h:728
@ LIBINPUT_LED_NUM_LOCK
Definition: libinput.h:218
enum libinput_config_status libinput_device_config_scroll_set_button(struct libinput_device *device, uint32_t button)
struct libinput_event * libinput_event_device_notify_get_base_event(struct libinput_event_device_notify *event)
libinput_config_middle_emulation_state
Definition: libinput.h:5549
double libinput_event_gesture_get_angle_delta(struct libinput_event_gesture *event)
int libinput_device_keyboard_has_key(struct libinput_device *device, uint32_t code)
int libinput_event_tablet_tool_distance_has_changed(struct libinput_event_tablet_tool *event)
enum libinput_config_status libinput_device_config_dwtp_set_enabled(struct libinput_device *device, enum libinput_config_dwtp_state enable)
uint64_t libinput_event_keyboard_get_time_usec(struct libinput_event_keyboard *event)
libinput_config_click_method
Definition: libinput.h:5453
libinput_led
Definition: libinput.h:217
enum libinput_tablet_tool_proximity_state libinput_event_tablet_tool_get_proximity_state(struct libinput_event_tablet_tool *event)
struct libinput * libinput_seat_get_context(struct libinput_seat *seat)
struct libinput_event * libinput_event_pointer_get_base_event(struct libinput_event_pointer *event)
int libinput_event_tablet_tool_size_minor_has_changed(struct libinput_event_tablet_tool *event)
@ LIBINPUT_EVENT_TOUCH_MOTION
Definition: libinput.h:827
uint32_t libinput_event_keyboard_get_seat_key_count(struct libinput_event_keyboard *event)
@ LIBINPUT_CONFIG_SCROLL_ON_BUTTON_DOWN
Send scroll events when a button is down and the device moves along a scroll-capable axis.
Definition: libinput.h:5694
@ LIBINPUT_CONFIG_ACCEL_PROFILE_ADAPTIVE
An adaptive acceleration profile.
Definition: libinput.h:5227
enum libinput_config_accel_profile libinput_device_config_accel_get_default_profile(struct libinput_device *device)
@ LIBINPUT_DEVICE_CAP_GESTURE
Definition: libinput.h:197
unsigned int libinput_tablet_pad_mode_group_get_mode(struct libinput_tablet_pad_mode_group *group)
struct libinput_event * libinput_event_gesture_get_base_event(struct libinput_event_gesture *event)
libinput_config_dwt_state
Definition: libinput.h:5952
uint64_t libinput_event_tablet_tool_get_time_usec(struct libinput_event_tablet_tool *event)
struct libinput_event_touch * libinput_event_get_touch_event(struct libinput_event *event)
enum libinput_config_tap_state libinput_device_config_tap_get_default_enabled(struct libinput_device *device)
int libinput_device_switch_has_switch(struct libinput_device *device, enum libinput_switch sw)
@ LIBINPUT_CONFIG_DWTP_ENABLED
Definition: libinput.h:6045
libinput_config_scroll_method
Definition: libinput.h:5674
libinput_pointer_axis
Definition: libinput.h:246
Definition: libinput.h:48
int32_t libinput_event_touch_get_slot(struct libinput_event_touch *event)
uint32_t libinput_event_tablet_tool_get_seat_button_count(struct libinput_event_tablet_tool *event)
int libinput_device_pointer_has_button(struct libinput_device *device, uint32_t code)
@ LIBINPUT_EVENT_TOUCH_DOWN
Definition: libinput.h:825
@ LIBINPUT_TABLET_PAD_STRIP_SOURCE_FINGER
The event is caused by the movement of one or more fingers on the strip.
Definition: libinput.h:320
enum libinput_config_status libinput_device_config_tap_set_enabled(struct libinput_device *device, enum libinput_config_tap_state enable)
int libinput_tablet_tool_has_button(struct libinput_tablet_tool *tool, uint32_t code)
@ LIBINPUT_TABLET_TOOL_TYPE_ERASER
Eraser.
Definition: libinput.h:347
unsigned int libinput_tablet_pad_mode_group_get_index(struct libinput_tablet_pad_mode_group *group)
int libinput_device_config_calibration_get_matrix(struct libinput_device *device, float matrix[6])
int libinput_device_tablet_pad_get_num_rings(struct libinput_device *device)
double libinput_event_gesture_get_scale(struct libinput_event_gesture *event)
libinput_config_status
Definition: libinput.h:4537
int libinput_tablet_tool_has_wheel(struct libinput_tablet_tool *tool)
Definition: libinput.h:133
enum libinput_key_state libinput_event_keyboard_get_key_state(struct libinput_event_keyboard *event)
uint32_t libinput_event_pointer_get_button(struct libinput_event_pointer *event)
enum libinput_config_scroll_method libinput_device_config_scroll_get_default_method(struct libinput_device *device)
struct udev_device * libinput_device_get_udev_device(struct libinput_device *device)
struct libinput_seat * libinput_seat_ref(struct libinput_seat *seat)
@ LIBINPUT_CONFIG_DWTP_DISABLED
Definition: libinput.h:6044
struct libinput_event * libinput_event_switch_get_base_event(struct libinput_event_switch *event)
@ LIBINPUT_DEVICE_CAP_POINTER
Definition: libinput.h:193
enum libinput_config_dwt_state libinput_device_config_dwt_get_default_enabled(struct libinput_device *device)
@ LIBINPUT_EVENT_POINTER_AXIS
A scroll event from various sources.
Definition: libinput.h:780
enum libinput_config_tap_state libinput_device_config_tap_get_enabled(struct libinput_device *device)
@ LIBINPUT_LOG_PRIORITY_DEBUG
Definition: libinput.h:180
uint64_t libinput_event_touch_get_time_usec(struct libinput_event_touch *event)
enum libinput_config_middle_emulation_state libinput_device_config_middle_emulation_get_default_enabled(struct libinput_device *device)
unsigned int libinput_device_config_rotation_get_angle(struct libinput_device *device)
struct libinput_tablet_tool * libinput_tablet_tool_ref(struct libinput_tablet_tool *tool)
enum libinput_config_click_method libinput_device_config_click_get_method(struct libinput_device *device)
@ LIBINPUT_EVENT_KEYBOARD_KEY
Definition: libinput.h:746
enum libinput_config_status libinput_device_config_scroll_set_natural_scroll_enabled(struct libinput_device *device, int enable)
double libinput_event_tablet_tool_get_dx(struct libinput_event_tablet_tool *event)
double libinput_event_tablet_tool_get_tilt_y(struct libinput_event_tablet_tool *event)
@ LIBINPUT_EVENT_GESTURE_HOLD_BEGIN
Definition: libinput.h:980
struct libinput_event_pointer * libinput_event_get_pointer_event(struct libinput_event *event)
@ LIBINPUT_CONFIG_STATUS_UNSUPPORTED
Configuration not available on this device.
Definition: libinput.h:4539
#define LIBINPUT_ATTRIBUTE_PRINTF(_format, _args)
Definition: libinput.h:37
double libinput_event_tablet_tool_get_size_minor(struct libinput_event_tablet_tool *event)
libinput_button_state
Definition: libinput.h:229
enum libinput_config_status libinput_device_config_accel_set_speed(struct libinput_device *device, double speed)
int(* open_restricted)(const char *path, int flags, void *user_data)
Open the device at the given path with the flags provided and return the fd.
Definition: libinput.h:3513
struct libinput_device_group * libinput_device_group_unref(struct libinput_device_group *group)
int libinput_device_tablet_pad_has_key(struct libinput_device *device, uint32_t code)
@ LIBINPUT_EVENT_TOUCH_FRAME
Signals the end of a set of touchpoints at one device sample time.
Definition: libinput.h:833
@ LIBINPUT_EVENT_DEVICE_ADDED
Signals that a device has been added to the context.
Definition: libinput.h:738
enum libinput_config_tap_button_map libinput_device_config_tap_get_default_button_map(struct libinput_device *device)
double libinput_event_pointer_get_axis_value(struct libinput_event_pointer *event, enum libinput_pointer_axis axis)
unsigned int libinput_tablet_pad_mode_group_get_num_modes(struct libinput_tablet_pad_mode_group *group)
enum libinput_config_status libinput_device_config_tap_set_button_map(struct libinput_device *device, enum libinput_config_tap_button_map map)
struct libinput_device * libinput_device_ref(struct libinput_device *device)
const char * libinput_device_get_output_name(struct libinput_device *device)
double libinput_event_pointer_get_dy(struct libinput_event_pointer *event)
@ LIBINPUT_CONFIG_ACCEL_PROFILE_FLAT
A flat acceleration profile.
Definition: libinput.h:5221
@ LIBINPUT_CONFIG_SCROLL_BUTTON_LOCK_DISABLED
Definition: libinput.h:5873
double libinput_event_gesture_get_dy_unaccelerated(struct libinput_event_gesture *event)
@ LIBINPUT_CONFIG_CLICK_METHOD_CLICKFINGER
The number of fingers decides which button press to generate.
Definition: libinput.h:5466
@ LIBINPUT_DEVICE_CAP_TABLET_TOOL
Definition: libinput.h:195
@ LIBINPUT_EVENT_DEVICE_REMOVED
Signals that a device has been removed.
Definition: libinput.h:744
double libinput_event_touch_get_x(struct libinput_event_touch *event)
void * libinput_tablet_pad_mode_group_get_user_data(struct libinput_tablet_pad_mode_group *group)
int libinput_event_gesture_get_finger_count(struct libinput_event_gesture *event)
int libinput_tablet_tool_has_rotation(struct libinput_tablet_tool *tool)
enum libinput_config_status libinput_device_config_scroll_set_method(struct libinput_device *device, enum libinput_config_scroll_method method)
libinput_key_state
Definition: libinput.h:207
uint32_t libinput_event_tablet_tool_get_button(struct libinput_event_tablet_tool *event)
@ LIBINPUT_POINTER_AXIS_SOURCE_CONTINUOUS
The event is caused by the motion of some device.
Definition: libinput.h:276
@ LIBINPUT_TABLET_TOOL_PROXIMITY_STATE_IN
Definition: libinput.h:377
int libinput_tablet_tool_has_slider(struct libinput_tablet_tool *tool)
double libinput_event_gesture_get_dx_unaccelerated(struct libinput_event_gesture *event)
double libinput_event_tablet_pad_get_ring_position(struct libinput_event_tablet_pad *event)
unsigned int libinput_device_get_id_vendor(struct libinput_device *device)
struct libinput_device_group * libinput_device_get_device_group(struct libinput_device *device)
@ LIBINPUT_CONFIG_DRAG_LOCK_ENABLED
Drag lock is to be enabled, or is currently disabled.
Definition: libinput.h:4822
int libinput_tablet_tool_has_size(struct libinput_tablet_tool *tool)
@ LIBINPUT_EVENT_GESTURE_PINCH_UPDATE
Definition: libinput.h:975
@ LIBINPUT_CONFIG_MIDDLE_EMULATION_ENABLED
Middle mouse button emulation is to be enabled, or is currently enabled.
Definition: libinput.h:5559
enum libinput_key_state libinput_event_tablet_pad_get_key_state(struct libinput_event_tablet_pad *event)
uint32_t libinput_device_config_scroll_get_default_button(struct libinput_device *device)
enum libinput_button_state libinput_event_tablet_pad_get_button_state(struct libinput_event_tablet_pad *event)
double libinput_event_tablet_tool_get_x(struct libinput_event_tablet_tool *event)
libinput_tablet_pad_ring_axis_source
Definition: libinput.h:297
int libinput_tablet_tool_has_distance(struct libinput_tablet_tool *tool)
@ LIBINPUT_EVENT_TABLET_TOOL_TIP
Signals that a tool has come in contact with the surface of a device with the LIBINPUT_DEVICE_CAP_TAB...
Definition: libinput.h:906
enum libinput_config_tap_button_map libinput_device_config_tap_get_button_map(struct libinput_device *device)
int libinput_event_tablet_tool_slider_has_changed(struct libinput_event_tablet_tool *event)
struct libinput_tablet_pad_mode_group * libinput_device_tablet_pad_get_mode_group(struct libinput_device *device, unsigned int index)
enum libinput_switch_state libinput_event_switch_get_switch_state(struct libinput_event_switch *event)
double libinput_event_pointer_get_dx(struct libinput_event_pointer *event)
@ LIBINPUT_EVENT_POINTER_MOTION
Definition: libinput.h:748
enum libinput_config_drag_state libinput_device_config_tap_get_default_drag_enabled(struct libinput_device *device)
libinput_device_capability
Definition: libinput.h:191
uint32_t libinput_event_gesture_get_time(struct libinput_event_gesture *event)
@ LIBINPUT_EVENT_POINTER_SCROLL_CONTINUOUS
A scroll event from a continuous scroll source, e.g.
Definition: libinput.h:823
int libinput_event_tablet_tool_size_major_has_changed(struct libinput_event_tablet_tool *event)
double libinput_event_tablet_tool_get_size_major(struct libinput_event_tablet_tool *event)
double libinput_event_pointer_get_absolute_y_transformed(struct libinput_event_pointer *event, uint32_t height)
void libinput_path_remove_device(struct libinput_device *device)
void libinput_suspend(struct libinput *libinput)
uint32_t libinput_device_config_scroll_get_button(struct libinput_device *device)
struct libinput * libinput_path_create_context(const struct libinput_interface *interface, void *user_data)
struct libinput_tablet_pad_mode_group * libinput_tablet_pad_mode_group_ref(struct libinput_tablet_pad_mode_group *group)
@ LIBINPUT_CONFIG_DRAG_DISABLED
Drag is to be disabled, or is currently disabled.
Definition: libinput.h:4748
int libinput_device_config_dwtp_is_available(struct libinput_device *device)
void libinput_set_user_data(struct libinput *libinput, void *user_data)
@ LIBINPUT_LOG_PRIORITY_INFO
Definition: libinput.h:181
@ LIBINPUT_CONFIG_SCROLL_EDGE
Send scroll events when a finger moves along the bottom or right edge of a device.
Definition: libinput.h:5689
Definition: libinput.h:159
@ LIBINPUT_EVENT_GESTURE_PINCH_END
Definition: libinput.h:976
@ LIBINPUT_TABLET_TOOL_TYPE_MOUSE
A mouse bound to the tablet.
Definition: libinput.h:352
enum libinput_switch libinput_event_switch_get_switch(struct libinput_event_switch *event)
int libinput_udev_assign_seat(struct libinput *libinput, const char *seat_id)
void libinput_tablet_pad_mode_group_set_user_data(struct libinput_tablet_pad_mode_group *group, void *user_data)
struct libinput_event_gesture * libinput_event_get_gesture_event(struct libinput_event *event)
int libinput_dispatch(struct libinput *libinput)
struct libinput_tablet_pad_mode_group * libinput_tablet_pad_mode_group_unref(struct libinput_tablet_pad_mode_group *group)
uint32_t libinput_event_pointer_get_seat_button_count(struct libinput_event_pointer *event)
double libinput_event_touch_get_y(struct libinput_event_touch *event)
@ LIBINPUT_CONFIG_SEND_EVENTS_DISABLED_ON_EXTERNAL_MOUSE
If an external pointer device is plugged in, do not send events from this device.
Definition: libinput.h:5038
enum libinput_pointer_axis_source libinput_event_pointer_get_axis_source(struct libinput_event_pointer *event)
enum libinput_tablet_pad_ring_axis_source libinput_event_tablet_pad_get_ring_source(struct libinput_event_tablet_pad *event)
int libinput_tablet_tool_has_tilt(struct libinput_tablet_tool *tool)
@ LIBINPUT_BUTTON_STATE_RELEASED
Definition: libinput.h:230
@ LIBINPUT_CONFIG_SCROLL_2FG
Send scroll events when two fingers are logically down on the device.
Definition: libinput.h:5684
@ LIBINPUT_TABLET_TOOL_TIP_UP
Definition: libinput.h:392
@ LIBINPUT_EVENT_TOUCH_UP
Definition: libinput.h:826
enum libinput_config_status libinput_device_config_tap_set_drag_enabled(struct libinput_device *device, enum libinput_config_drag_state enable)
@ LIBINPUT_EVENT_POINTER_BUTTON
Definition: libinput.h:750
enum libinput_config_dwt_state libinput_device_config_dwt_get_enabled(struct libinput_device *device)
void * libinput_tablet_tool_get_user_data(struct libinput_tablet_tool *tool)
const char * libinput_seat_get_logical_name(struct libinput_seat *seat)
@ LIBINPUT_EVENT_GESTURE_SWIPE_UPDATE
Definition: libinput.h:972
libinput_switch_state
Definition: libinput.h:670
@ LIBINPUT_TABLET_TOOL_TYPE_TOTEM
A rotary device with positional and rotation data.
Definition: libinput.h:354
struct libinput_event * libinput_event_tablet_pad_get_base_event(struct libinput_event_tablet_pad *event)
enum libinput_config_status libinput_device_config_rotation_set_angle(struct libinput_device *device, unsigned int degrees_cw)
double libinput_event_pointer_get_absolute_x(struct libinput_event_pointer *event)
@ LIBINPUT_CONFIG_DRAG_ENABLED
Drag is to be enabled, or is currently enabled.
Definition: libinput.h:4753
@ LIBINPUT_SWITCH_STATE_ON
Definition: libinput.h:672
struct libinput_event * libinput_event_touch_get_base_event(struct libinput_event_touch *event)
@ LIBINPUT_SWITCH_TABLET_MODE
This switch indicates whether the device is in normal laptop mode or behaves like a tablet-like devic...
Definition: libinput.h:704
double libinput_event_pointer_get_axis_value_discrete(struct libinput_event_pointer *event, enum libinput_pointer_axis axis)
@ LIBINPUT_CONFIG_SEND_EVENTS_ENABLED
Send events from this device normally.
Definition: libinput.h:5018
Definition: libinput.h:108
enum libinput_config_dwtp_state libinput_device_config_dwtp_get_enabled(struct libinput_device *device)
struct libinput * libinput_event_get_context(struct libinput_event *event)
@ LIBINPUT_TABLET_TOOL_TIP_DOWN
Definition: libinput.h:393
@ LIBINPUT_CONFIG_STATUS_INVALID
Invalid parameter range.
Definition: libinput.h:4541
void * libinput_device_get_user_data(struct libinput_device *device)
@ LIBINPUT_LED_CAPS_LOCK
Definition: libinput.h:219
@ LIBINPUT_CONFIG_TAP_DISABLED
Tapping is to be disabled, or is currently disabled.
Definition: libinput.h:4560
libinput_tablet_tool_type
Definition: libinput.h:345
void(* close_restricted)(int fd, void *user_data)
Close the file descriptor.
Definition: libinput.h:3521
@ LIBINPUT_CONFIG_MIDDLE_EMULATION_DISABLED
Middle mouse button emulation is to be disabled, or is currently disabled.
Definition: libinput.h:5554
struct libinput_seat * libinput_device_get_seat(struct libinput_device *device)
double libinput_event_pointer_get_scroll_value(struct libinput_event_pointer *event, enum libinput_pointer_axis axis)
const char * libinput_device_get_name(struct libinput_device *device)
uint64_t libinput_event_switch_get_time_usec(struct libinput_event_switch *event)
int libinput_event_pointer_has_axis(struct libinput_event_pointer *event, enum libinput_pointer_axis axis)
@ LIBINPUT_LED_SCROLL_LOCK
Definition: libinput.h:220
int libinput_event_tablet_tool_pressure_has_changed(struct libinput_event_tablet_tool *event)
@ LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL
Definition: libinput.h:247
int libinput_device_config_middle_emulation_is_available(struct libinput_device *device)
Definition: libinput.h:145
libinput_config_tap_button_map
Definition: libinput.h:4649
@ LIBINPUT_POINTER_AXIS_SOURCE_WHEEL_TILT
The event is caused by the tilting of a mouse wheel rather than its rotation.
Definition: libinput.h:286
void libinput_device_group_set_user_data(struct libinput_device_group *group, void *user_data)
@ LIBINPUT_CONFIG_DWT_ENABLED
Definition: libinput.h:5954
Definition: libinput.h:96
libinput_switch
Definition: libinput.h:682
double libinput_event_tablet_tool_get_rotation(struct libinput_event_tablet_tool *event)
libinput_config_scroll_button_lock_state
Definition: libinput.h:5872
uint32_t libinput_device_config_send_events_get_mode(struct libinput_device *device)
unsigned int libinput_event_tablet_pad_get_mode(struct libinput_event_tablet_pad *event)
@ LIBINPUT_EVENT_TABLET_PAD_BUTTON
A button pressed on a device with the LIBINPUT_DEVICE_CAP_TABLET_PAD capability.
Definition: libinput.h:941
uint64_t libinput_tablet_tool_get_tool_id(struct libinput_tablet_tool *tool)
libinput_config_send_events_mode
Definition: libinput.h:5012
enum libinput_config_drag_lock_state libinput_device_config_tap_get_default_drag_lock_enabled(struct libinput_device *device)
enum libinput_tablet_pad_strip_axis_source libinput_event_tablet_pad_get_strip_source(struct libinput_event_tablet_pad *event)
void libinput_log_set_priority(struct libinput *libinput, enum libinput_log_priority priority)
int libinput_event_tablet_tool_y_has_changed(struct libinput_event_tablet_tool *event)
struct libinput_device * libinput_device_unref(struct libinput_device *device)
double libinput_device_config_accel_get_default_speed(struct libinput_device *device)
void(* libinput_log_handler)(struct libinput *libinput, enum libinput_log_priority priority, const char *format, va_list args) LIBINPUT_ATTRIBUTE_PRINTF(3
Definition: libinput.h:3844
double libinput_event_gesture_get_dy(struct libinput_event_gesture *event)
int libinput_device_touch_get_touch_count(struct libinput_device *device)
@ LIBINPUT_LOG_PRIORITY_ERROR
Definition: libinput.h:182
int32_t libinput_event_touch_get_seat_slot(struct libinput_event_touch *event)
enum libinput_config_status libinput_device_config_send_events_set_mode(struct libinput_device *device, uint32_t mode)
@ LIBINPUT_TABLET_TOOL_TYPE_AIRBRUSH
An airbrush-like tool.
Definition: libinput.h:351
@ LIBINPUT_CONFIG_TAP_MAP_LRM
1/2/3 finger tap maps to left/right/middle
Definition: libinput.h:4651
@ LIBINPUT_DEVICE_CAP_TOUCH
Definition: libinput.h:194
double libinput_event_pointer_get_absolute_y(struct libinput_event_pointer *event)
struct libinput_event_device_notify * libinput_event_get_device_notify_event(struct libinput_event *event)
@ LIBINPUT_CONFIG_CLICK_METHOD_NONE
Do not send software-emulated button events.
Definition: libinput.h:5458
struct libinput_device * libinput_path_add_device(struct libinput *libinput, const char *path)
@ LIBINPUT_EVENT_SWITCH_TOGGLE
Definition: libinput.h:986
@ LIBINPUT_EVENT_TABLET_PAD_KEY
A key pressed on a device with the LIBINPUT_DEVICE_CAP_TABLET_PAD capability.
Definition: libinput.h:969
int libinput_device_config_accel_is_available(struct libinput_device *device)
int libinput_device_tablet_pad_get_num_strips(struct libinput_device *device)
Definition: libinput.h:124
enum libinput_config_dwtp_state libinput_device_config_dwtp_get_default_enabled(struct libinput_device *device)
double libinput_event_tablet_tool_get_distance(struct libinput_event_tablet_tool *event)
struct libinput_event_keyboard * libinput_event_get_keyboard_event(struct libinput_event *event)
int libinput_event_gesture_get_cancelled(struct libinput_event_gesture *event)
int libinput_device_config_left_handed_is_available(struct libinput_device *device)
int libinput_device_tablet_pad_get_num_buttons(struct libinput_device *device)
unsigned int libinput_event_tablet_pad_get_ring_number(struct libinput_event_tablet_pad *event)
@ LIBINPUT_EVENT_TOUCH_CANCEL
Definition: libinput.h:828
int libinput_device_config_calibration_has_matrix(struct libinput_device *device)
struct libinput * libinput_unref(struct libinput *libinput)
uint32_t libinput_event_keyboard_get_time(struct libinput_event_keyboard *event)
const char * libinput_seat_get_physical_name(struct libinput_seat *seat)
@ LIBINPUT_DEVICE_CAP_TABLET_PAD
Definition: libinput.h:196
uint32_t libinput_event_tablet_tool_get_time(struct libinput_event_tablet_tool *event)
int libinput_device_config_left_handed_get(struct libinput_device *device)
double libinput_event_tablet_tool_get_y(struct libinput_event_tablet_tool *event)
@ LIBINPUT_CONFIG_TAP_MAP_LMR
1/2/3 finger tap maps to left/middle/right
Definition: libinput.h:4653
struct libinput_event_tablet_tool * libinput_event_get_tablet_tool_event(struct libinput_event *event)
@ LIBINPUT_EVENT_TABLET_TOOL_AXIS
One or more axes have changed state on a device with the LIBINPUT_DEVICE_CAP_TABLET_TOOL capability.
Definition: libinput.h:854
int libinput_device_config_tap_get_finger_count(struct libinput_device *device)
@ LIBINPUT_EVENT_POINTER_MOTION_ABSOLUTE
Definition: libinput.h:749
uint32_t libinput_event_switch_get_time(struct libinput_event_switch *event)
uint64_t libinput_event_gesture_get_time_usec(struct libinput_event_gesture *event)
enum libinput_tablet_tool_tip_state libinput_event_tablet_tool_get_tip_state(struct libinput_event_tablet_tool *event)
int libinput_event_tablet_tool_get_wheel_delta_discrete(struct libinput_event_tablet_tool *event)
@ LIBINPUT_TABLET_PAD_STRIP_SOURCE_UNKNOWN
Definition: libinput.h:315
uint32_t libinput_device_config_send_events_get_modes(struct libinput_device *device)
@ LIBINPUT_BUTTON_STATE_PRESSED
Definition: libinput.h:231
enum libinput_config_status libinput_device_config_calibration_set_matrix(struct libinput_device *device, const float matrix[6])
void libinput_device_set_user_data(struct libinput_device *device, void *user_data)
int libinput_device_set_seat_logical_name(struct libinput_device *device, const char *name)
double libinput_event_tablet_tool_get_pressure(struct libinput_event_tablet_tool *event)
void libinput_device_led_update(struct libinput_device *device, enum libinput_led leds)
uint64_t libinput_event_pointer_get_time_usec(struct libinput_event_pointer *event)
double libinput_event_gesture_get_dx(struct libinput_event_gesture *event)
@ LIBINPUT_DEVICE_CAP_SWITCH
Definition: libinput.h:198
int libinput_event_tablet_tool_rotation_has_changed(struct libinput_event_tablet_tool *event)
@ LIBINPUT_TABLET_PAD_RING_SOURCE_UNKNOWN
Definition: libinput.h:298
struct libinput_event * libinput_event_keyboard_get_base_event(struct libinput_event_keyboard *event)
@ LIBINPUT_EVENT_TABLET_PAD_RING
A status change on a tablet ring with the LIBINPUT_DEVICE_CAP_TABLET_PAD capability.
Definition: libinput.h:948
@ LIBINPUT_CONFIG_CLICK_METHOD_BUTTON_AREAS
Use software-button areas to generate button events.
Definition: libinput.h:5462
@ LIBINPUT_EVENT_POINTER_SCROLL_WHEEL
A scroll event from a wheel.
Definition: libinput.h:794
int libinput_get_fd(struct libinput *libinput)
double libinput_event_tablet_pad_get_strip_position(struct libinput_event_tablet_pad *event)
libinput_tablet_tool_tip_state
Definition: libinput.h:391
void * libinput_device_group_get_user_data(struct libinput_device_group *group)
double libinput_event_pointer_get_scroll_value_v120(struct libinput_event_pointer *event, enum libinput_pointer_axis axis)
@ LIBINPUT_CONFIG_STATUS_SUCCESS
Config applied successfully.
Definition: libinput.h:4538
libinput_config_drag_lock_state
Definition: libinput.h:4818
@ LIBINPUT_POINTER_AXIS_SOURCE_FINGER
The event is caused by the movement of one or more fingers on a device.
Definition: libinput.h:272
libinput_config_accel_profile
Definition: libinput.h:5208
enum libinput_config_status libinput_device_config_click_set_method(struct libinput_device *device, enum libinput_config_click_method method)
double libinput_event_tablet_tool_get_x_transformed(struct libinput_event_tablet_tool *event, uint32_t width)
double libinput_event_tablet_tool_get_y_transformed(struct libinput_event_tablet_tool *event, uint32_t height)
@ LIBINPUT_EVENT_POINTER_SCROLL_FINGER
A scroll event caused by the movement of one or more fingers on a device.
Definition: libinput.h:808
double libinput_event_pointer_get_absolute_x_transformed(struct libinput_event_pointer *event, uint32_t width)
Definition: libinput.h:67
@ LIBINPUT_TABLET_TOOL_PROXIMITY_STATE_OUT
Definition: libinput.h:376
double libinput_device_config_accel_get_speed(struct libinput_device *device)
@ LIBINPUT_SWITCH_STATE_OFF
Definition: libinput.h:671
struct libinput_device * libinput_event_get_device(struct libinput_event *event)
@ LIBINPUT_TABLET_PAD_RING_SOURCE_FINGER
The event is caused by the movement of one or more fingers on the ring.
Definition: libinput.h:303
int libinput_tablet_tool_has_pressure(struct libinput_tablet_tool *tool)
@ LIBINPUT_CONFIG_TAP_ENABLED
Tapping is to be enabled, or is currently enabled.
Definition: libinput.h:4562
int libinput_tablet_pad_mode_group_has_ring(struct libinput_tablet_pad_mode_group *group, unsigned int ring)
int libinput_tablet_pad_mode_group_button_is_toggle(struct libinput_tablet_pad_mode_group *group, unsigned int button)
enum libinput_config_click_method libinput_device_config_click_get_default_method(struct libinput_device *device)
Definition: libinput.h:3501
const char * libinput_device_get_sysname(struct libinput_device *device)
double libinput_event_tablet_tool_get_dy(struct libinput_event_tablet_tool *event)
struct libinput_tablet_tool * libinput_tablet_tool_unref(struct libinput_tablet_tool *tool)
int libinput_device_get_size(struct libinput_device *device, double *width, double *height)
Definition: libinput.h:116
enum libinput_button_state libinput_event_pointer_get_button_state(struct libinput_event_pointer *event)
double libinput_event_pointer_get_dx_unaccelerated(struct libinput_event_pointer *event)
uint64_t libinput_tablet_tool_get_serial(struct libinput_tablet_tool *tool)
enum libinput_config_status libinput_device_config_tap_set_drag_lock_enabled(struct libinput_device *device, enum libinput_config_drag_lock_state enable)
int libinput_device_config_calibration_get_default_matrix(struct libinput_device *device, float matrix[6])
int libinput_device_config_dwt_is_available(struct libinput_device *device)
int libinput_tablet_pad_mode_group_has_button(struct libinput_tablet_pad_mode_group *group, unsigned int button)
libinput_config_tap_state
Definition: libinput.h:4559
uint32_t libinput_event_tablet_pad_get_time(struct libinput_event_tablet_pad *event)
uint32_t libinput_event_tablet_pad_get_key(struct libinput_event_tablet_pad *event)
@ LIBINPUT_EVENT_GESTURE_SWIPE_END
Definition: libinput.h:973
enum libinput_config_middle_emulation_state libinput_device_config_middle_emulation_get_enabled(struct libinput_device *device)
@ LIBINPUT_POINTER_AXIS_SOURCE_WHEEL
The event is caused by the rotation of a wheel.
Definition: libinput.h:267
int libinput_device_config_rotation_is_available(struct libinput_device *device)
int libinput_event_tablet_tool_x_has_changed(struct libinput_event_tablet_tool *event)
const char * libinput_config_status_to_str(enum libinput_config_status status)
uint32_t libinput_device_config_accel_get_profiles(struct libinput_device *device)
unsigned int libinput_device_config_rotation_get_default_angle(struct libinput_device *device)
enum libinput_tablet_tool_type libinput_tablet_tool_get_type(struct libinput_tablet_tool *tool)
@ LIBINPUT_EVENT_GESTURE_SWIPE_BEGIN
Definition: libinput.h:971
enum libinput_config_drag_lock_state libinput_device_config_tap_get_drag_lock_enabled(struct libinput_device *device)
@ LIBINPUT_KEY_STATE_PRESSED
Definition: libinput.h:209
struct libinput_event_switch * libinput_event_get_switch_event(struct libinput_event *event)
void libinput_seat_set_user_data(struct libinput_seat *seat, void *user_data)
int libinput_event_tablet_tool_wheel_has_changed(struct libinput_event_tablet_tool *event)
enum libinput_config_status libinput_device_config_accel_set_profile(struct libinput_device *device, enum libinput_config_accel_profile profile)
struct libinput_tablet_tool * libinput_event_tablet_tool_get_tool(struct libinput_event_tablet_tool *event)
int libinput_event_tablet_tool_tilt_x_has_changed(struct libinput_event_tablet_tool *event)
libinput_event_type
Definition: libinput.h:722
enum libinput_event_type libinput_event_get_type(struct libinput_event *event)
void(*) voi libinput_log_set_handler)(struct libinput *libinput, libinput_log_handler log_handler)
Definition: libinput.h:3865
int libinput_device_config_scroll_get_default_natural_scroll_enabled(struct libinput_device *device)
enum libinput_event_type libinput_next_event_type(struct libinput *libinput)
double libinput_event_tablet_tool_get_slider_position(struct libinput_event_tablet_tool *event)
int libinput_device_tablet_pad_get_num_mode_groups(struct libinput_device *device)
struct libinput_event_tablet_pad * libinput_event_get_tablet_pad_event(struct libinput_event *event)
enum libinput_config_status libinput_device_config_left_handed_set(struct libinput_device *device, int left_handed)
uint32_t libinput_device_config_send_events_get_default_mode(struct libinput_device *device)
libinput_pointer_axis_source
Definition: libinput.h:263
double libinput_event_tablet_tool_get_tilt_x(struct libinput_event_tablet_tool *event)
uint32_t libinput_event_tablet_pad_get_button_number(struct libinput_event_tablet_pad *event)
enum libinput_config_status libinput_device_config_dwt_set_enabled(struct libinput_device *device, enum libinput_config_dwt_state enable)
uint32_t libinput_device_config_scroll_get_methods(struct libinput_device *device)
@ LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL
Definition: libinput.h:248
void * libinput_seat_get_user_data(struct libinput_seat *seat)
enum libinput_config_accel_profile libinput_device_config_accel_get_profile(struct libinput_device *device)
int libinput_resume(struct libinput *libinput)
int libinput_device_config_scroll_has_natural_scroll(struct libinput_device *device)
@ LIBINPUT_SWITCH_LID
The laptop lid was closed when the switch state is LIBINPUT_SWITCH_STATE_ON, or was opened when it is...
Definition: libinput.h:688
double libinput_event_pointer_get_dy_unaccelerated(struct libinput_event_pointer *event)
uint32_t libinput_event_keyboard_get_key(struct libinput_event_keyboard *event)
enum libinput_config_scroll_button_lock_state libinput_device_config_scroll_get_default_button_lock(struct libinput_device *device)
void * libinput_get_user_data(struct libinput *libinput)
int libinput_device_has_capability(struct libinput_device *device, enum libinput_device_capability capability)
struct libinput * libinput_udev_create_context(const struct libinput_interface *interface, void *user_data, struct udev *udev)
void libinput_event_destroy(struct libinput_event *event)
enum libinput_button_state libinput_event_tablet_tool_get_button_state(struct libinput_event_tablet_tool *event)
enum libinput_config_status libinput_device_config_middle_emulation_set_enabled(struct libinput_device *device, enum libinput_config_middle_emulation_state enable)
struct libinput_event * libinput_get_event(struct libinput *libinput)
double libinput_event_touch_get_x_transformed(struct libinput_event_touch *event, uint32_t width)
@ LIBINPUT_EVENT_TABLET_TOOL_BUTTON
Signals that a tool has changed a logical button state on a device with the LIBINPUT_DEVICE_CAP_TABLE...
Definition: libinput.h:924
uint32_t libinput_event_touch_get_time(struct libinput_event_touch *event)
@ LIBINPUT_CONFIG_DRAG_LOCK_DISABLED
Drag lock is to be disabled, or is currently disabled.
Definition: libinput.h:4820
@ LIBINPUT_TABLET_TOOL_TYPE_LENS
A mouse tool with a lens.
Definition: libinput.h:353
@ LIBINPUT_CONFIG_SEND_EVENTS_DISABLED
Do not send events through this device.
Definition: libinput.h:5032
@ LIBINPUT_CONFIG_SCROLL_BUTTON_LOCK_ENABLED
Definition: libinput.h:5874
@ LIBINPUT_TABLET_TOOL_TYPE_BRUSH
A paintbrush-like tool.
Definition: libinput.h:348
uint64_t libinput_event_tablet_pad_get_time_usec(struct libinput_event_tablet_pad *event)
double libinput_event_touch_get_y_transformed(struct libinput_event_touch *event, uint32_t height)
int libinput_tablet_tool_is_unique(struct libinput_tablet_tool *tool)
struct libinput * libinput_device_get_context(struct libinput_device *device)
int libinput_event_tablet_tool_tilt_y_has_changed(struct libinput_event_tablet_tool *event)
@ LIBINPUT_DEVICE_CAP_KEYBOARD
Definition: libinput.h:192
enum libinput_config_status libinput_device_config_scroll_set_button_lock(struct libinput_device *device, enum libinput_config_scroll_button_lock_state state)
@ LIBINPUT_TABLET_TOOL_TYPE_PEN
A generic pen.
Definition: libinput.h:346
@ LIBINPUT_EVENT_TABLET_PAD_STRIP
A status change on a strip on a device with the LIBINPUT_DEVICE_CAP_TABLET_PAD capability.
Definition: libinput.h:956
libinput_tablet_pad_strip_axis_source
Definition: libinput.h:314
uint32_t libinput_device_config_click_get_methods(struct libinput_device *device)
struct libinput_tablet_pad_mode_group * libinput_event_tablet_pad_get_mode_group(struct libinput_event_tablet_pad *event)
Definition: libinput.h:57
@ LIBINPUT_CONFIG_DWT_DISABLED
Definition: libinput.h:5953
int libinput_tablet_pad_mode_group_has_strip(struct libinput_tablet_pad_mode_group *group, unsigned int strip)
struct libinput_event * libinput_event_tablet_tool_get_base_event(struct libinput_event_tablet_tool *event)
unsigned int libinput_event_tablet_pad_get_strip_number(struct libinput_event_tablet_pad *event)
enum libinput_config_scroll_method libinput_device_config_scroll_get_method(struct libinput_device *device)
struct libinput_device_group * libinput_device_group_ref(struct libinput_device_group *group)
unsigned int libinput_device_get_id_product(struct libinput_device *device)
enum libinput_config_drag_state libinput_device_config_tap_get_drag_enabled(struct libinput_device *device)
libinput_log_priority
Definition: libinput.h:179
Definition: libinput.h:76
double libinput_event_tablet_tool_get_wheel_delta(struct libinput_event_tablet_tool *event)
@ LIBINPUT_EVENT_GESTURE_PINCH_BEGIN
Definition: libinput.h:974
int libinput_device_config_left_handed_get_default(struct libinput_device *device)
struct libinput_seat * libinput_seat_unref(struct libinput_seat *seat)
struct libinput * libinput_ref(struct libinput *libinput)
@ LIBINPUT_KEY_STATE_RELEASED
Definition: libinput.h:208
libinput_config_drag_state
Definition: libinput.h:4743
@ LIBINPUT_CONFIG_SCROLL_NO_SCROLL
Never send scroll events instead of pointer motion events.
Definition: libinput.h:5679
int libinput_device_config_scroll_get_natural_scroll_enabled(struct libinput_device *device)
@ LIBINPUT_CONFIG_ACCEL_PROFILE_NONE
Placeholder for devices that don't have a configurable pointer acceleration profile.
Definition: libinput.h:5213
enum libinput_config_scroll_button_lock_state libinput_device_config_scroll_get_button_lock(struct libinput_device *device)
libinput_tablet_tool_proximity_state
Definition: libinput.h:375
uint32_t libinput_event_pointer_get_time(struct libinput_event_pointer *event)
@ LIBINPUT_EVENT_GESTURE_HOLD_END
Definition: libinput.h:981
void libinput_tablet_tool_set_user_data(struct libinput_tablet_tool *tool, void *user_data)
libinput_config_dwtp_state
Definition: libinput.h:6043
enum libinput_log_priority libinput_log_get_priority(const struct libinput *libinput)
@ LIBINPUT_TABLET_TOOL_TYPE_PENCIL
Physical drawing tool, e.g.
Definition: libinput.h:349
@ LIBINPUT_EVENT_TABLET_TOOL_PROXIMITY
Signals that a tool has come in or out of proximity of a device with the LIBINPUT_DEVICE_CAP_TABLET_T...
Definition: libinput.h:881