On Wed, Jan 19, 2011 at 11:11:43PM +0000, Daniel Stone wrote: > Does what it says on the box: returns the deepest child window in a > given sprite's trace. > > Signed-off-by: Daniel Stone <[email protected]>
Reviewed-by: Peter Hutterer <[email protected]> Cheers, Peter > --- > > v5: New. > > dix/events.c | 4 ++-- > include/inputstr.h | 3 +++ > 2 files changed, 5 insertions(+), 2 deletions(-) > > diff --git a/dix/events.c b/dix/events.c > index 07f8b05..5f8ce39 100644 > --- a/dix/events.c > +++ b/dix/events.c > @@ -2174,7 +2174,7 @@ MaybeDeliverEventsToClient(WindowPtr pWin, xEvent > *pEvents, > > static Window FindChildForEvent(SpritePtr pSprite, WindowPtr event) > { > - WindowPtr w = pSprite->spriteTrace[pSprite->spriteTraceGood-1]; > + WindowPtr w = DeepestSpriteWin(pSprite); > Window child = None; > > /* If the search ends up past the root should the child field be > @@ -2591,7 +2591,7 @@ XYToWindow(SpritePtr pSprite, int x, int y) > else > pWin = pWin->nextSib; > } > - return pSprite->spriteTrace[pSprite->spriteTraceGood-1]; > + return DeepestSpriteWin(pSprite); > } > > /** > diff --git a/include/inputstr.h b/include/inputstr.h > index b74ee04..8291577 100644 > --- a/include/inputstr.h > +++ b/include/inputstr.h > @@ -244,6 +244,9 @@ typedef struct _SpriteRec { > > } SpriteRec; > > +#define DeepestSpriteWin(sprite) \ > + ((sprite)->spriteTrace[(sprite)->spriteTraceGood - 1]) > + > typedef struct _KeyClassRec { > int sourceid; > CARD8 down[DOWN_LENGTH]; > -- > 1.7.2.3 > _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
