http://bugs.winehq.org/show_bug.cgi?id=6971
--- Comment #172 from Brian Vuyk brian@brianvuyk.com 2008-09-04 12:00:19 --- (In reply to comment #171)
(In reply to comment #170)
Is there a good reason why the mouse should be not be allowed to go off center when warping rather than being allowed to the edge of the screen? I can't see where it would make a different in first-person views, since the mouse cursor is hidden. Are there situations that I may not be taking into account?
See my previous replies. You can't do that without using DXGrab.
If you wait for mouse to be withing 2px of the border before you warp:
- You will loose part of the long pointer motion (say 100px while pointer is
10px away from the border). This will be felt like "sticking" mouse in action games. 2. In 99% cases you will loose the pointer itself (it will go off the Wine's window). This means number of bad things. The biggest one - Wine won't be receiving any pointer movement events at all. And nothing will be warping that pointer. 3. You still not solving the problem with "edge-scrolling" used in some games to scroll screen when you move mouse "past the edge".
Hi Vitaliy.
Ah yes - I hadn't thought about edge scrollers.
However, to address your other two points,
1. I haven't noticed any 'sticking' sensation in the games I've tested this patch with. 2. Never lost the pointer.
Finally, edge scrollers are no good under the current system as it is, if they have the mouse stuck to center or confined to the window. However, this will make it somewhat playable if they have keyboard controls to move / pan the screen as opposed to mouse only control.
It's not a perfect solution (never did I claim this), but I think it's improves this bug in that it makes apps suffering from it somewhat more playable, and will not (AFAIK) affect apps not suffering from this bug.