aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/include/input.h
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-12-16 20:49:54 +0100
committerMarc Haesen <marc@hc-consult.be>2011-12-16 20:46:08 +0100
commit1ae4005bfe3690b34ec40e33918b3e24468d47e1 (patch)
tree451bee4796d3058f90af4e66f2cfbdfbe6c77bfe /xorg-server/include/input.h
parent64718ba8bdcecd8d736a48239847b1f9aadd40ea (diff)
parent47913e82955ec8e2b1ba4d4b145497dede9163b5 (diff)
downloadvcxsrv-1ae4005bfe3690b34ec40e33918b3e24468d47e1.tar.gz
vcxsrv-1ae4005bfe3690b34ec40e33918b3e24468d47e1.tar.bz2
vcxsrv-1ae4005bfe3690b34ec40e33918b3e24468d47e1.zip
Merge remote-tracking branch 'origin/released'
Conflicts: xorg-server/dix/dispatch.c xorg-server/dix/registry.c xorg-server/include/resource.h xorg-server/os/access.c xorg-server/os/auth.c
Diffstat (limited to 'xorg-server/include/input.h')
-rw-r--r--xorg-server/include/input.h20
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,