[PATCH xserver 06/17] Input: Export SpriteRec for use in public API
Peter Hutterer
peter.hutterer at who-t.net
Tue Jan 4 19:57:51 PST 2011
On Tue, Dec 28, 2010 at 05:57:57PM +0000, Daniel Stone wrote:
> Change its definition to be more in line with other structs, so we can
> use it from input.h.
>
> Signed-off-by: Daniel Stone <daniel at fooishbar.org>
Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
> ---
> include/input.h | 1 +
> include/inputstr.h | 82 ++++++++++++++++++++++++++--------------------------
> 2 files changed, 42 insertions(+), 41 deletions(-)
>
> diff --git a/include/input.h b/include/input.h
> index 9f3227f..76f646f 100644
> --- a/include/input.h
> +++ b/include/input.h
> @@ -103,6 +103,7 @@ typedef struct _OtherClients *OtherClientsPtr;
> typedef struct _InputClients *InputClientsPtr;
> typedef struct _DeviceIntRec *DeviceIntPtr;
> typedef struct _ClassesRec *ClassesPtr;
> +typedef struct _SpriteRec *SpritePtr;
> typedef union _GrabMask GrabMask;
>
> typedef struct _EventList {
> diff --git a/include/inputstr.h b/include/inputstr.h
> index 44de9c4..159d7f6 100644
> --- a/include/inputstr.h
> +++ b/include/inputstr.h
> @@ -203,6 +203,47 @@ typedef struct _GrabRec {
> unsigned char xi2mask[EMASKSIZE][XI2MASKSIZE];
> } GrabRec;
>
> +/**
> + * Sprite information for a device.
> + */
> +typedef struct _SpriteRec {
> + CursorPtr current;
> + BoxRec hotLimits; /* logical constraints of hot spot */
> + Bool confined; /* confined to screen */
> + RegionPtr hotShape; /* additional logical shape constraint */
> + BoxRec physLimits; /* physical constraints of hot spot */
> + WindowPtr win; /* window of logical position */
> + HotSpot hot; /* logical pointer position */
> + HotSpot hotPhys; /* physical pointer position */
> +#ifdef PANORAMIX
> + ScreenPtr screen; /* all others are in Screen 0 coordinates */
> + RegionRec Reg1; /* Region 1 for confining motion */
> + RegionRec Reg2; /* Region 2 for confining virtual motion */
> + WindowPtr windows[MAXSCREENS];
> + WindowPtr confineWin; /* confine window */
> +#endif
> + /* The window trace information is used at dix/events.c to avoid having
> + * to compute all the windows between the root and the current pointer
> + * window each time a button or key goes down. The grabs on each of those
> + * windows must be checked.
> + * spriteTraces should only be used at dix/events.c! */
> + WindowPtr *spriteTrace;
> + int spriteTraceSize;
> + int spriteTraceGood;
> +
> + /* Due to delays between event generation and event processing, it is
> + * possible that the pointer has crossed screen boundaries between the
> + * time in which it begins generating events and the time when
> + * those events are processed.
> + *
> + * pEnqueueScreen: screen the pointer was on when the event was generated
> + * pDequeueScreen: screen the pointer was on when the event is processed
> + */
> + ScreenPtr pEnqueueScreen;
> + ScreenPtr pDequeueScreen;
> +
> +} SpriteRec;
> +
> typedef struct _KeyClassRec {
> int sourceid;
> CARD8 down[DOWN_LENGTH];
> @@ -360,47 +401,6 @@ typedef struct _ClassesRec {
> } ClassesRec;
>
>
> -/**
> - * Sprite information for a device.
> - */
> -typedef struct {
> - CursorPtr current;
> - BoxRec hotLimits; /* logical constraints of hot spot */
> - Bool confined; /* confined to screen */
> - RegionPtr hotShape; /* additional logical shape constraint */
> - BoxRec physLimits; /* physical constraints of hot spot */
> - WindowPtr win; /* window of logical position */
> - HotSpot hot; /* logical pointer position */
> - HotSpot hotPhys; /* physical pointer position */
> -#ifdef PANORAMIX
> - ScreenPtr screen; /* all others are in Screen 0 coordinates */
> - RegionRec Reg1; /* Region 1 for confining motion */
> - RegionRec Reg2; /* Region 2 for confining virtual motion */
> - WindowPtr windows[MAXSCREENS];
> - WindowPtr confineWin; /* confine window */
> -#endif
> - /* The window trace information is used at dix/events.c to avoid having
> - * to compute all the windows between the root and the current pointer
> - * window each time a button or key goes down. The grabs on each of those
> - * windows must be checked.
> - * spriteTraces should only be used at dix/events.c! */
> - WindowPtr *spriteTrace;
> - int spriteTraceSize;
> - int spriteTraceGood;
> -
> - /* Due to delays between event generation and event processing, it is
> - * possible that the pointer has crossed screen boundaries between the
> - * time in which it begins generating events and the time when
> - * those events are processed.
> - *
> - * pEnqueueScreen: screen the pointer was on when the event was generated
> - * pDequeueScreen: screen the pointer was on when the event is processed
> - */
> - ScreenPtr pEnqueueScreen;
> - ScreenPtr pDequeueScreen;
> -
> -} SpriteRec, *SpritePtr;
> -
> /* Device properties */
> typedef struct _XIPropertyValue
> {
> --
> 1.7.2.3
>
More information about the xorg-devel
mailing list