diff options
author | marha <marha@users.sourceforge.net> | 2011-12-16 20:45:15 +0100 |
---|---|---|
committer | Marc Haesen <marc@hc-consult.be> | 2011-12-16 20:45:15 +0100 |
commit | 47913e82955ec8e2b1ba4d4b145497dede9163b5 (patch) | |
tree | d23c322caf26864270171d54eb2805cee2721e4d /xorg-server/include/input.h | |
parent | 53d28537755790ee4625dc16f560cad5aa93f56b (diff) | |
download | vcxsrv-47913e82955ec8e2b1ba4d4b145497dede9163b5.tar.gz vcxsrv-47913e82955ec8e2b1ba4d4b145497dede9163b5.tar.bz2 vcxsrv-47913e82955ec8e2b1ba4d4b145497dede9163b5.zip |
xserver git update 16 dec 2011
Diffstat (limited to 'xorg-server/include/input.h')
-rw-r--r-- | xorg-server/include/input.h | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/xorg-server/include/input.h b/xorg-server/include/input.h index 8b0c18e70..bd12f6829 100644 --- a/xorg-server/include/input.h +++ b/xorg-server/include/input.h @@ -57,6 +57,7 @@ SOFTWARE. #include "xkbrules.h" #include "events.h" #include "list.h" +#include <X11/extensions/XI2.h> #define DEVICE_INIT 0 #define DEVICE_ON 1 @@ -101,6 +102,12 @@ SOFTWARE. #define RevertToFollowKeyboard 3 #endif +enum InputLevel { + CORE, + XI, + XI2, +}; + typedef unsigned long Leds; typedef struct _OtherClients *OtherClientsPtr; typedef struct _InputClients *InputClientsPtr; @@ -537,14 +544,16 @@ extern _X_EXPORT void FreeInputAttributes(InputAttributes *attrs); extern Mask GetEventMask(DeviceIntPtr dev, xEvent* ev, InputClientsPtr clients); extern Mask GetEventFilter(DeviceIntPtr dev, xEvent *event); extern Bool WindowXI2MaskIsset(DeviceIntPtr dev, WindowPtr win, xEvent* ev); +extern int GetXI2MaskByte(XI2Mask *mask, DeviceIntPtr dev, int event_type); void FixUpEventFromWindow(SpritePtr pSprite, xEvent *xE, WindowPtr pWin, Window child, Bool calcChild); extern WindowPtr XYToWindow(SpritePtr pSprite, int x, int y); -extern int EventIsDeliverable(DeviceIntPtr dev, InternalEvent* event, - WindowPtr win); +extern int EventIsDeliverable(DeviceIntPtr dev, int evtype, WindowPtr win); +extern Bool ActivatePassiveGrab(DeviceIntPtr dev, GrabPtr grab, + InternalEvent *ev); /** * Masks specifying the type of event to deliver for an InternalEvent; used * by EventIsDeliverable. @@ -557,6 +566,13 @@ extern int EventIsDeliverable(DeviceIntPtr dev, InternalEvent* event, #define EVENT_XI2_MASK (1 << 3) /**< XI2 mask set on window */ /* @} */ +enum EventDeliveryState { + EVENT_DELIVERED, /**< Event has been delivered to a client */ + EVENT_NOT_DELIVERED, /**< Event was not delivered to any client */ + EVENT_SKIP, /**< Event can be discarded by the caller */ + EVENT_REJECTED, /**< Event was rejected for delivery to the client */ +}; + /* Implemented by the DDX. */ extern _X_EXPORT int NewInputDeviceRequest( InputOption *options, |