[PATCH] winex11: Make GetCursorPos respect clipping and virtual screen size.

Lauri Kenttä lauri.kentta at gmail.com
Wed May 18 12:01:57 CDT 2011


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?

-- 
Lauri Kenttä



More information about the wine-devel mailing list