Vitaliy Margolen : dinput: Warp mouse in exclusive cooperation mode only.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Dec 20 08:55:00 CST 2006


Module: wine
Branch: master
Commit: 938657b1c1ff1f6c05b3a521a60f3dcfef0d196b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=938657b1c1ff1f6c05b3a521a60f3dcfef0d196b

Author: Vitaliy Margolen <wine-patches at kievinfo.com>
Date:   Wed Dec 20 01:05:42 2006 -0700

dinput: Warp mouse in exclusive cooperation mode only.

---

 dlls/dinput/mouse.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dlls/dinput/mouse.c b/dlls/dinput/mouse.c
index 2894fb6..9ab1b1f 100644
--- a/dlls/dinput/mouse.c
+++ b/dlls/dinput/mouse.c
@@ -311,7 +311,7 @@ static LRESULT CALLBACK dinput_mouse_hoo
                 queue_event((LPDIRECTINPUTDEVICE8A)This, This->base.data_format.offsets[WINE_MOUSE_Y_POSITION],
                             pt1.y, hook->time, This->dinput->evsequence);
 
-            This->need_warp = (pt.x || pt.y);
+            This->need_warp = (pt.x || pt.y) && dwCoop & DISCL_EXCLUSIVE;
             break;
         }
         case WM_LBUTTONDOWN:
@@ -434,7 +434,7 @@ static HRESULT WINAPI SysMouseAImpl_Acqu
     This->win_centerY = (rect.bottom - rect.top ) / 2;
     
     /* Warp the mouse to the center of the window */
-    if (!(This->base.data_format.user_df->dwFlags & DIDF_ABSAXIS))
+    if (This->base.dwCoopLevel & DISCL_EXCLUSIVE)
     {
       This->mapped_center.x = This->win_centerX;
       This->mapped_center.y = This->win_centerY;
@@ -472,7 +472,7 @@ static HRESULT WINAPI SysMouseAImpl_Unac
       ERR("this(%p) != current_lock(%p)\n", This, current_lock);
 
     /* And put the mouse cursor back where it was at acquire time */
-    if (!(This->base.data_format.user_df->dwFlags & DIDF_ABSAXIS))
+    if (This->base.dwCoopLevel & DISCL_EXCLUSIVE)
     {
       TRACE(" warping mouse back to (%d , %d)\n", This->org_coords.x, This->org_coords.y);
       SetCursorPos(This->org_coords.x, This->org_coords.y);




More information about the wine-cvs mailing list