winemac: When ClipCursor() is called redundantly, don't warp the cursor or discard mouse move events.

Fixes a problem in some games which repeatedly (re)establish the same cursor
clipping rect, making it exceedingly difficult to move the camera with the
mouse.
This commit is contained in:
Ken Thomases 2013-12-16 19:42:22 -06:00 committed by Alexandre Julliard
parent b877885400
commit 77f0a63b4f
1 changed files with 4 additions and 0 deletions

View File

@ -1353,6 +1353,10 @@ - (BOOL) startClippingCursor:(CGRect)rect
if (!cursorClippingEventTap && ![self installEventTap])
return FALSE;
if (clippingCursor && CGRectEqualToRect(rect, cursorClipRect) &&
CGEventTapIsEnabled(cursorClippingEventTap))
return TRUE;
err = CGAssociateMouseAndMouseCursorPosition(false);
if (err != kCGErrorSuccess)
return FALSE;