http://bugs.winehq.org/show_bug.cgi?id=30123
Bug #: 30123 Summary: Mouse pointer is confined in a box lesser than the full screen Product: Wine Version: 1.4-rc4 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: directx-dinput AssignedTo: wine-bugs@winehq.org ReportedBy: kol@MV8660.spb.edu Classification: Unclassified
Running TES5:Skyrim on the old system without Xinput2 support and on the modern Fedora 16 (but not on Ubuntu) under Wine 1.3.21 or later versions exhibits the "inertial mouse" bug described in http://appdb.winehq.org/objectManager.php?sClass=version&iId=24749 : after changing the direction of mouse movement the look continues to move in the old direction for some time.
Since Wine 1.4-rc1 the old "inertial mouse" bug goes away but it is replaced by the new "clip" bug. The old bug appeared to be caused by the next strings in the dinput_mouse_hook() function in "dlls/dinput/mouse.c": if (This->clipped) pt = This->mapped_center; else GetCursorPos(&pt); which have been changed to GetCursorPos(&pt); in Wine 1.4-rc1. With new versions of Wine the mouse pointer is confined to some box lesser than the full screen. The behaviour of mouse depends on the "HKCU\Software\Wine\X11 Driver\GrabPointer" key. When it is set to "Y", the pointer is strictly confined to a box in game and in menus, when the key is set to "N", the pointer moves free in menus but mouse look in game is free within some limits and becomes very slow beyond these limits. It is similar to Bug#6971 but setting "MouseWarpOverride" to "force" does not change the mouse movement.
I experimentally found a simple "patch" to workaround: in the function warp_check() in "dlls/dinput/mouse.c" file the last operator "This->clipped = ..." has to be commented out and "This->clipped = FALSE;" has to be inserted in place of. I do not know how it work but it makes the mouse look correct in Skyrim on my Fedora 10 system and, as far as I can see, does not break other games at least in fullscreen mode.
http://bugs.winehq.org/show_bug.cgi?id=30123
Jason beatme101@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |beatme101@gmail.com
--- Comment #1 from Jason beatme101@gmail.com 2012-03-10 17:11:15 CST --- I am on 1.4~rc6 and still experience the "inertial mouse" bug which makes this game as well as Oblivion unplayable. I am on Ubuntu 11.04.
Just want to make it clear that it hasn't been fixed.
http://bugs.winehq.org/show_bug.cgi?id=30123
Vitaliy Margolen vitaliy-bugzilla@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|directx-dinput |-unknown
--- Comment #2 from Vitaliy Margolen vitaliy-bugzilla@kievinfo.com 2012-03-11 11:28:50 CDT --- Please attach output of WINEDEBUG=+cursor,+event,+tid,+dinput
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #3 from Kol kol@MV8660.spb.edu 2012-03-14 16:53:19 CDT --- Created attachment 39366 --> http://bugs.winehq.org/attachment.cgi?id=39366 Log file with "GrabPointer"="Y"
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #4 from Kol kol@MV8660.spb.edu 2012-03-14 16:57:22 CDT --- The above attachment is the output of playing TES5:Skyrim for some seconds with WINEDEBUG=+cursor,+event,+tid,+dinput and setting the "HKCU\Software\Wine\X11 Driver\GrabPointer" key to "Y".
Wine version: 1.4-rc4 System: Fedora 10 (kernel 2.6.27.5, Xorg 1.5.3 without Xinput2) Nvidia driver version: 290.10
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #5 from Kol kol@MV8660.spb.edu 2012-03-14 17:01:16 CDT --- Created attachment 39367 --> http://bugs.winehq.org/attachment.cgi?id=39367 Log file with "GrabPointer"="N"
The output of playing TES5:Skyrim on the same system with WINEDEBUG=+cursor,+event,+tid,+dinput and setting the "HKCU\Software\Wine\X11 Driver\GrabPointer" key to "N" is attached.
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #6 from Kol kol@MV8660.spb.edu 2012-03-14 17:11:03 CDT --- Created attachment 39368 --> http://bugs.winehq.org/attachment.cgi?id=39368 Log file generated by patched Wine
The output of playing TES5:Skyrim with WINEDEBUG=+cursor,+event,+tid,+dinput under patched Wine 1.4-rc4 with "This->clipped = FALSE;" inserted to the end of warp_check(). The "HKCU\Software\Wine\X11 Driver\GrabPointer" key was set to "N".
http://bugs.winehq.org/show_bug.cgi?id=30123
Vitaliy Margolen vitaliy-bugzilla@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |WONTFIX
--- Comment #7 from Vitaliy Margolen vitaliy-bugzilla@kievinfo.com 2012-03-14 21:23:31 CDT --- Sorry, but systems with xinput2 are no longer "supported". You facing the same issues as you have with bug 6971. Upgrade.
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #8 from Vitaliy Margolen vitaliy-bugzilla@kievinfo.com 2012-03-14 21:51:48 CDT --- Meant to say "systems without Xinput2". AJ broke/removed most workarounds for bug 6971. I'm not going to fix it again.
http://bugs.winehq.org/show_bug.cgi?id=30123
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|WONTFIX |
--- Comment #9 from Alexandre Julliard julliard@winehq.org 2012-03-15 02:43:18 CDT --- (In reply to comment #8)
Meant to say "systems without Xinput2". AJ broke/removed most workarounds for bug 6971. I'm not going to fix it again.
The behavior should still be the same (yes there have been some bugs, but I believe they are fixed). If you know of cases where it's still worse with the latest git, please file bugs instead of claiming that it's not supported.
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #10 from Vitaliy Margolen vitaliy-bugzilla@kievinfo.com 2012-03-15 07:53:18 CDT --- (In reply to comment #9)
setting "MouseWarpOverride" to "force" does not change the mouse movement.
Here is the first one that comes to mind.
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #11 from Alexandre Julliard julliard@winehq.org 2012-03-15 13:39:01 CDT --- (In reply to comment #10)
(In reply to comment #9)
setting "MouseWarpOverride" to "force" does not change the mouse movement.
Here is the first one that comes to mind.
Have you tried with current git?
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #12 from Kol kol@MV8660.spb.edu 2012-03-23 21:12:27 CDT --- I have tried to play TES5:Skyrim under Wine 1.5.0 and the result was the same: the "inertial mouse" bug is out but the mouse pointer is confined to a box. I guess that the related thing is
commit 7c7a509e22a54cd64c6ea0be80303dcaad6e01fb Date: Mon, 12 Mar 2012 10:33:52 +0100 Subject: winex11: Never try to clip the cursor if we don't have XInput2
but this does not help.
Maybe, the reason is that "GetClipCursor( &new_rect )" at the end of warp_check() returns TRUE, whereas it should return FALSE. Inserting "This->clipped = FALSE;" fixes the bug.
http://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #13 from Alexandre Julliard julliard@winehq.org 2012-03-26 11:01:16 CDT --- (In reply to comment #12)
Maybe, the reason is that "GetClipCursor( &new_rect )" at the end of warp_check() returns TRUE, whereas it should return FALSE. Inserting "This->clipped = FALSE;" fixes the bug.
It's the EqualRect that is supposed to return FALSE. A +cursor trace would probably help.
http://bugs.winehq.org/show_bug.cgi?id=30123
Brandon Corujo haku08879@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |haku08879@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #14 from Rosanne DiMesio dimesio@earthlink.net --- Is this still an issue for anyone? I've never encountered this playing Skyrim.
https://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #15 from Jason beatme101@gmail.com --- Skyrim seems to work fine for me now. No problems with controls. Unable to test Oblivion because it crashes on startup now, but if it works in one I'm sure it would work in the other.
https://bugs.winehq.org/show_bug.cgi?id=30123
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED
--- Comment #16 from Rosanne DiMesio dimesio@earthlink.net --- Marking fixed.
https://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #17 from Kol kol@MV8660.spb.edu --- I still have the bug in TES5:Skyrim (and only in this game) with plain Wine 1.7.25. Perhaps, it is due to my old system (Xorg 7.3) without Xinput2 support. Insertion "This->clipped = FALSE;" at the end of function warp_check() in "dlls/dinput/mouse.c" still fixes the bug in fullscreen mode.
https://bugs.winehq.org/show_bug.cgi?id=30123
Rosanne DiMesio dimesio@earthlink.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |--- Ever confirmed|0 |1
--- Comment #18 from Rosanne DiMesio dimesio@earthlink.net --- Reopening based on comment 17.
Someone affected by this might want to attach the +cursor trace requested by AJ over two years ago (comment 13).
https://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #19 from Kol kol@MV8660.spb.edu --- Created attachment 49600 --> https://bugs.winehq.org/attachment.cgi?id=49600 Log file generated with +cursor
This is the compressed output of Wine 1.7.27 playing TES5:Skyrim for some seconds with WINEDEBUG="+cursor". The bug is present.
https://bugs.winehq.org/show_bug.cgi?id=30123
Ryan Koch ryankoch38@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ryankoch38@gmail.com
--- Comment #20 from Ryan Koch ryankoch38@gmail.com --- Hello, This bug still exists in Wine 2.0 running X11 v11 on Fedora 25. Can someone please explain how to recompile the dinput.dll file without recompiling the entire wine installation? I am a simple noob in way over my head trying to play Skyrim. Bump.
https://bugs.winehq.org/show_bug.cgi?id=30123
Vlad vblanton@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |vblanton@gmail.com
--- Comment #21 from Vlad vblanton@gmail.com --- I had this issue in wine 2.13 on fedora 26. I reinstalled skyrim from scratch, kept my old saves. everything seems to work fine now.
https://bugs.winehq.org/show_bug.cgi?id=30123
tokktokk fdsfgs@krutt.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fdsfgs@krutt.org
https://bugs.winehq.org/show_bug.cgi?id=30123
zzzzzyzz@hacari.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zzzzzyzz@hacari.org
https://bugs.winehq.org/show_bug.cgi?id=30123
pattietreutel katyaberezyaka@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |katyaberezyaka@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=30123
Adam adam09_92@o2.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |adam09_92@o2.pl
--- Comment #22 from Adam adam09_92@o2.pl --- After install wine 4.2 Skyrim works fine. Tested on Linux Mint 18.3
https://bugs.winehq.org/show_bug.cgi?id=30123
--- Comment #23 from Adam adam09_92@o2.pl --- After install wine 4.2, Skyrim works fine. Tested on Linux Mint 18.3
https://bugs.winehq.org/show_bug.cgi?id=30123
Vlad vblanton@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|vblanton@gmail.com |