---
xserver/hw/xwin/InitInput.c | 5 ++---
xserver/hw/xwin/wincursor.c | 33 ++++++++++++++++++++++++---------
2 files changed, 26 insertions(+), 12 deletions(-)
Index: xorg-git/xserver/hw/xwin/InitInput.c
===================================================================
--- xorg-git.orig/xserver/hw/xwin/InitInput.c
+++ xorg-git/xserver/hw/xwin/InitInput.c
@@ -94,7 +94,6 @@ ProcessInputEvents (void)
#endif
mieqProcessInputEvents ();
- miPointerUpdate ();
#if 0
ErrorF ("ProcessInputEvents - returning\n");
@@ -145,8 +144,8 @@ InitInput (int argc, char *argv[])
}
#endif
- pMouse = AddInputDevice (winMouseProc, TRUE);
- pKeyboard = AddInputDevice (winKeybdProc, TRUE);
+ pMouse = AddInputDevice (serverClient, winMouseProc, TRUE);
+ pKeyboard = AddInputDevice (serverClient, winKeybdProc, TRUE);
RegisterPointerDevice (pMouse);
RegisterKeyboardDevice (pKeyboard);
Index: xorg-git/xserver/hw/xwin/wincursor.c
===================================================================
--- xorg-git.orig/xserver/hw/xwin/wincursor.c
+++ xorg-git/xserver/hw/xwin/wincursor.c
@@ -62,7 +62,7 @@ extern Bool g_fSoftwareCursor;
*/
static void
-winPointerWarpCursor (ScreenPtr pScreen, int x, int y);
+winPointerWarpCursor (DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y);
static Bool
winCursorOffScreen (ScreenPtr *ppScreen, int *x, int *y);
@@ -79,7 +79,7 @@ miPointerScreenFuncRec g_winPointerCurso
static void
-winPointerWarpCursor (ScreenPtr pScreen, int x, int y)
+winPointerWarpCursor (DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y)
{
winScreenPriv(pScreen);
RECT rcClient;
@@ -119,7 +119,7 @@ winPointerWarpCursor (ScreenPtr pScreen,
}
/* Call the mi warp procedure to do the actual warping in X. */
- miPointerWarpCursor (pScreen, x, y);
+ miPointerWarpCursor (inputInfo.pointer, pScreen, x, y);
}
static Bool
@@ -437,7 +437,7 @@ winLoadCursor (ScreenPtr pScreen, Cursor
* Convert the X cursor representation to native format if possible.
*/
static Bool
-winRealizeCursor (ScreenPtr pScreen, CursorPtr pCursor)
+winRealizeCursor (DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor)
{
if(pCursor == NULL || pCursor->bits == NULL)
return FALSE;
@@ -453,7 +453,7 @@ winRealizeCursor (ScreenPtr pScreen, Cur
* Free the storage space associated with a realized cursor.
*/
static Bool
-winUnrealizeCursor(ScreenPtr pScreen, CursorPtr pCursor)
+winUnrealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor)
{
return TRUE;
}
@@ -464,7 +464,7 @@ winUnrealizeCursor(ScreenPtr pScreen, Cu
* Set the cursor sprite and position.
*/
static void
-winSetCursor (ScreenPtr pScreen, CursorPtr pCursor, int x, int y)
+winSetCursor (DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor, int x,
int y)
{
POINT ptCurPos, ptTemp;
HWND hwnd;
@@ -538,20 +538,35 @@ winSetCursor (ScreenPtr pScreen, CursorP
/*
- * QuartzMoveCursor
+ * winMoveCursor
* Move the cursor. This is a noop for us.
*/
static void
-winMoveCursor (ScreenPtr pScreen, int x, int y)
+winMoveCursor (DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y)
{
}
+static Bool
+winDeviceCursorInitialize(DeviceIntPtr pDev, ScreenPtr pScr)
+{
+ winScreenPriv(pScr);
+ return pScreenPriv->cursor.spriteFuncs->DeviceCursorInitialize(pDev, pScr);
+}
+
+static void
+winDeviceCursorCleanup(DeviceIntPtr pDev, ScreenPtr pScr)
+{
+ winScreenPriv(pScr);
+ return pScreenPriv->cursor.spriteFuncs->DeviceCursorCleanup(pDev, pScr);
+}
static miPointerSpriteFuncRec winSpriteFuncsRec = {
winRealizeCursor,
winUnrealizeCursor,
winSetCursor,
- winMoveCursor
+ winMoveCursor,
+ winDeviceCursorInitialize,
+ winDeviceCursorCleanup
};
--
_______________________________________________
xorg mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/xorg