Enable event delivery for multiple heads.

Requires moving the spriteTrace into the DeviceIntRec and adjusting a few
functions to take in device argument, most notably XYToWindow().

Cursor rendering on the second screen is busted.
This commit is contained in:
Paulo Ricardo Zanoni
2007-04-26 15:58:50 +09:30
committed by Peter Hutterer
parent d61ed6c8a2
commit 82f97e1c0c
16 changed files with 143 additions and 100 deletions

View File

@@ -135,10 +135,16 @@ RRPointerMoved (ScreenPtr pScreen, int x, int y)
void
RRPointerScreenConfigured (ScreenPtr pScreen)
{
WindowPtr pRoot = GetCurrentRootWindow ();
WindowPtr pRoot = GetCurrentRootWindow (inputInfo.pointer);
ScreenPtr pCurrentScreen = pRoot ? pRoot->drawable.pScreen : NULL;
int x, y;
/* XXX: GetCurrentRootWindow revices an argument, It is inputInfo.pointer,
* but I really think this is wrong... What do we do here? This was made so
* that it can compile, but I don't think randr should assume there is just
* one pointer. There might be more than one pointer on the screen! So, what
* to do? What happens? */
if (pScreen != pCurrentScreen)
return;
GetSpritePosition(inputInfo.pointer, &x, &y);