On Wed, 18 May 2011 12:22:57 +0200, Alexandre Julliard wrote:
The clip rectangle is only valid while the pointer is grabbed, in which case the cursor pos will be clipped already.
That's true. I only tested the other case.
So for the case where the pointer is not grabbed (for instance if you don't have XInput) it would have to go through the wineserver.
So is it then possible to clip the cursor to the virtual desktop in the wineserver, or do you see some apparent problem there? I would be surprised if this was the only application to choke on strange mouse coordinates.
Have you tried the new desktop clipping mode?
Sorry, I missed that because of missing XI2. That indeed fixes the clipping (but only when the window is active) and works fine with an external mouse.
With my touchpad the results are much more interesting. The cursor moves slowly (around 1/3 of normal speed) but warps once per second to where it really should be. When the cursor stops, the game starts polling with GetCursorPos and the cursor warps again to the correct position. The TRACE in GetCursorPos shows that "server pos" follows the slower movement and is different from what the function returns.
Maybe I should file a bug about that?