--- ./save_winwndproc.c 2007-01-06 18:28:17.000000000 +0000 +++ ./winwndproc.c 2007-01-06 18:35:56.000000000 +0000 @@ -40,6 +40,7 @@ #include "winprefs.h" #include "winconfig.h" #include "winmsg.h" +#include "inputstr.h" #ifdef XKB extern BOOL winCheckKeyPressed(WPARAM wParam, LPARAM lParam); @@ -723,8 +724,8 @@ break; /* Has the mouse pointer crossed screens? */ - if (s_pScreen != miPointerCurrentScreen ()) - miPointerSetNewScreen (s_pScreenInfo->dwScreen, + if (s_pScreen != miPointerGetScreen(inputInfo.pointer)) + miPointerSetScreen (inputInfo.pointer, s_pScreenInfo->dwScreen, GET_X_LPARAM(lParam)-s_pScreenInfo->dwXOffset, GET_Y_LPARAM(lParam)-s_pScreenInfo->dwYOffset); --- ./save_winwin32rootlesswndproc.c 2007-01-06 18:31:11.000000000 +0000 +++ ./winwin32rootlesswndproc.c 2007-01-06 18:38:10.000000000 +0000 @@ -41,6 +41,7 @@ #include #include "winmultiwindowclass.h" #include "winmsg.h" +#include "inputstr.h" /* @@ -534,8 +535,8 @@ break; /* Has the mouse pointer crossed screens? */ - if (pScreen != miPointerCurrentScreen ()) - miPointerSetNewScreen (pScreenInfo->dwScreen, + if (pScreen != miPointerGetScreen(inputInfo.pointer)) + miPointerSetScreen (inputInfo.pointer, pScreenInfo->dwScreen, ptMouse.x - pScreenInfo->dwXOffset, ptMouse.y - pScreenInfo->dwYOffset); --- ./save_winmultiwindowwndproc.c 2007-01-06 18:31:00.000000000 +0000 +++ ./winmultiwindowwndproc.c 2007-01-06 18:37:41.000000000 +0000 @@ -38,6 +38,7 @@ #include "winmultiwindowclass.h" #include "winprefs.h" #include "winmsg.h" +#include "inputstr.h" /* * External global variables @@ -494,8 +495,8 @@ break; /* Has the mouse pointer crossed screens? */ - if (s_pScreen != miPointerCurrentScreen ()) - miPointerSetNewScreen (s_pScreenInfo->dwScreen, + if (s_pScreen != miPointerGetScreen(inputInfo.pointer)) + miPointerSetScreen (inputInfo.pointer, s_pScreenInfo->dwScreen, ptMouse.x - s_pScreenInfo->dwXOffset, ptMouse.y - s_pScreenInfo->dwYOffset);