03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/************************************************************
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncCopyright 1996 by Thomas E. Dickey <dickey@clark.net>
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync All Rights Reserved
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncPermission to use, copy, modify, and distribute this software and its
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncdocumentation for any purpose and without fee is hereby granted,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncprovided that the above copyright notice appear in all copies and that
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncboth that copyright notice and this permission notice appear in
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncsupporting documentation, and that the name of the above listed
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynccopyright holder(s) not be used in advertising or publicity pertaining
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncto distribution of the software without specific, written prior
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncpermission.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncTHE ABOVE LISTED COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncTO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncAND FITNESS, IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncLIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncWHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncOR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync********************************************************/
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/********************************************************************
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Interface of 'exevents.c'
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#ifndef EXEVENTS_H
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define EXEVENTS_H
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include <X11/extensions/XIproto.h>
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#include "inputstr.h"
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/***************************************************************
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Interface available to drivers *
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ***************************************************************/
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/**
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Scroll flags for ::SetScrollValuator.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncenum ScrollFlags {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync SCROLL_FLAG_NONE = 0,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync /**
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Do not emulate legacy button events for valuator events on this axis.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync SCROLL_FLAG_DONT_EMULATE = (1 << 1),
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync /**
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * This axis is the preferred axis for valuator emulation for this axis'
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * scroll type.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync SCROLL_FLAG_PREFERRED = (1 << 2)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync};
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT int InitProximityClassDeviceStruct(DeviceIntPtr /* dev */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT Bool InitValuatorAxisStruct(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* axnum */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom /* label */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* minval */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* maxval */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* resolution */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* min_res */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* max_res */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* mode */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT Bool SetScrollValuator(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* axnum */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync enum ScrollType /* type */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync double /* increment */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* flags */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/* Input device properties */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT void XIDeleteAllDeviceProperties(DeviceIntPtr /* device */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT int XIDeleteDeviceProperty(DeviceIntPtr /* device */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom /* property */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool /* fromClient */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT int XIChangeDeviceProperty(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom /* property */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom /* type */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* format */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* mode */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned long /* len */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync const void * /* value */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool /* sendevent */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT int XIGetDeviceProperty(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom /* property */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XIPropertyValuePtr * /* value */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT int XISetDevicePropertyDeletable(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom /* property */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool /* deletable */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT long XIRegisterPropertyHandler(DeviceIntPtr dev,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int (*SetProperty) (DeviceIntPtr
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync dev,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync property,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XIPropertyValuePtr
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync prop,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync BOOL
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync checkonly),
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int (*GetProperty) (DeviceIntPtr
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync dev,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync property),
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int (*DeleteProperty)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync (DeviceIntPtr dev,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Atom property)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT void XIUnregisterPropertyHandler(DeviceIntPtr dev, long id);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT Atom XIGetKnownProperty(const char *name);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT DeviceIntPtr XIGetDevice(xEvent *ev);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT int XIPropToInt(XIPropertyValuePtr val,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int *nelem_return, int **buf_return);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_EXPORT int XIPropToFloat(XIPropertyValuePtr val,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int *nelem_return, float **buf_return);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/****************************************************************************
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * End of driver interface *
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ****************************************************************************/
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/**
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Attached to the devPrivates of each client. Specifies the version number as
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * supported by the client.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynctypedef struct _XIClientRec {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int major_version;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int minor_version;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync} XIClientRec, *XIClientPtr;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsynctypedef struct _GrabParameters {
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int grabtype; /* CORE, etc. */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned int ownerEvents;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned int this_device_mode;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned int other_devices_mode;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Window grabWindow;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Window confineTo;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Cursor cursor;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned int modifiers;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync} GrabParameters;
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync UpdateDeviceState(DeviceIntPtr /* device */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceEvent * /* xE */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ProcessOtherEvent(InternalEvent * /* ev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* other */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync CheckGrabValues(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabParameters * /* param */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabButton(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* modifier_device */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* button */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabParameters * /* param */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync enum InputLevel /* grabtype */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabMask * /* eventMask */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabKey(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* modifier_device */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* key */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabParameters * /* param */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync enum InputLevel /* grabtype */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabMask * /* eventMask */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabWindow(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* type */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabParameters * /* param */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabMask * /* eventMask */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabTouch(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* mod_dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabParameters * /* param */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabMask * /* eventMask */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync SelectForWindow(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync WindowPtr /* pWin */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* mask */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* exclusivemasks */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync AddExtensionClient(WindowPtr /* pWin */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* mask */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* mskidx */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync RecalculateDeviceDeliverableEvents(WindowPtr /* pWin */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync InputClientGone(WindowPtr /* pWin */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XID /* id */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync WindowGone(WindowPtr /* win */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync SendEvent(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* d */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Window /* dest */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool /* propagate */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync xEvent * /* ev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* mask */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync SetButtonMapping(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* nElts */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync BYTE * /* map */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ChangeKeyMapping(ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned /* len */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* type */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync KeyCode /* firstKeyCode */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync CARD8 /* keyCodes */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync CARD8 /* keySymsPerKeyCode */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync KeySym * /* map */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeleteWindowFromAnyExtEvents(WindowPtr /* pWin */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Bool /* freeResources */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync MaybeSendDeviceMotionNotifyHint(deviceKeyButtonPointer * /* pEvents */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* mask */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync CheckDeviceGrabAndHintWindow(WindowPtr /* pWin */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* type */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync deviceKeyButtonPointer * /* xE */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync GrabPtr /* grab */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* deliveryMask */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync MaybeStopDeviceHint(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ClientPtr /* client */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync DeviceEventSuppressForWindow(WindowPtr /* pWin */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ClientPtr /* client */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* mask */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* maskndx */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync SendEventToAllWindows(DeviceIntPtr /* dev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync Mask /* mask */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync xEvent * /* ev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync int /* count */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync TouchRejected(DeviceIntPtr /* sourcedev */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync TouchPointInfoPtr /* ti */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XID /* resource */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync TouchOwnershipEvent * /* ev */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern _X_HIDDEN void XI2EventSwap(xGenericEvent * /* from */ ,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync xGenericEvent * /* to */ );
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/* For an event such as MappingNotify which affects client interpretation
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * of input events sent by device dev, should we notify the client, or
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * would it merely be irrelevant and confusing? */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XIShouldNotify(ClientPtr client, DeviceIntPtr dev);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern void
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XISendDeviceChangedEvent(DeviceIntPtr device, DeviceChangedEvent *dce);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncXISetEventMask(DeviceIntPtr dev, WindowPtr win, ClientPtr client,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync unsigned int len, unsigned char *mask);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsyncextern int
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync XICheckInvalidMaskBits(ClientPtr client, unsigned char *mask, int len);
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#endif /* EXEVENTS_H */