From 0711598dd3e8366217676f462f1af7d0899656d9 Mon Sep 17 00:00:00 2001 From: Dan Nicholson Date: Wed, 2 Sep 2009 06:47:13 -0700 Subject: config: Introduce InputAttributes in NewInputDeviceRequest In order to give NewInputDeviceRequest more information, a new InputAttributes type is introduced. Currently, this collects the product and vendor name, device path, and sets booleans for attributes such as having keys and/or a pointer. Only the HAL backend fills in the attributes, though. Signed-off-by: Dan Nicholson Reviewed-by: Peter Hutterer --- include/input.h | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'include') diff --git a/include/input.h b/include/input.h index afcc006f8..7a6242d08 100644 --- a/include/input.h +++ b/include/input.h @@ -52,6 +52,7 @@ SOFTWARE. #include "screenint.h" #include #include +#include #include "window.h" /* for WindowPtr */ #include "xkbrules.h" #include "events.h" @@ -210,6 +211,20 @@ typedef struct _InputOption { struct _InputOption *next; } InputOption; +typedef struct _InputAttributes { + char *product; + char *vendor; + char *device; + uint32_t flags; +} InputAttributes; + +#define ATTR_KEYBOARD (1<<0) +#define ATTR_POINTER (1<<1) +#define ATTR_JOYSTICK (1<<2) +#define ATTR_TABLET (1<<3) +#define ATTR_TOUCHPAD (1<<4) +#define ATTR_TOUCHSCREEN (1<<5) + /* Key has been run through all input processing and events sent to clients. */ #define KEY_PROCESSED 1 /* Key has not been fully processed, no events have been sent. */ @@ -514,6 +529,7 @@ void FixUpEventFromWindow(DeviceIntPtr pDev, /* Implemented by the DDX. */ extern _X_EXPORT int NewInputDeviceRequest( InputOption *options, + InputAttributes *attrs, DeviceIntPtr *dev); extern _X_EXPORT void DeleteInputDeviceRequest( DeviceIntPtr dev); -- cgit v1.2.3