[Bug 60287] New: GetCursorPos returns a stale position under XWayland/Wayland after the pointer leaves Wine windows
http://bugs.winehq.org/show_bug.cgi?id=60287 Bug ID: 60287 Summary: GetCursorPos returns a stale position under XWayland/Wayland after the pointer leaves Wine windows Product: Wine Version: 11.16 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: winex11.drv Assignee: wine-bugs@list.winehq.org Reporter: wszqkzqk@qq.com Target Milestone: --- Distribution: --- Created attachment 82028 --> http://bugs.winehq.org/attachment.cgi?id=82028 minimal reproducer In a Wayland session, GetCursorPos() continues returning a stale position inside the window after the cursor leaves all Wine windows and moves onto a native Wayland surface. This directly affects applications that poll GetCursorPos() and WindowFromPoint() to detect mouse movement. For example, Plants vs. Zombies uses a polling loop to handle cursor transitions. On Windows, it detects the cursor leaving within about 20ms, but under Wine/XWayland, it never detects the leave. Wayland does not expose pointer coordinates once it leaves the surface and enters a foreign window. I've created a minimal reproducer. To compile, run: ``` x86_64-w64-mingw32-gcc -mwindows -o cursor_poll.exe cursor_poll.c ``` Run it in a Wayland session, and move the pointer out of the window at normal speed. The status text should flip to OUTSIDE immediately, as on Windows. But it stays INSIDE with a frozen position. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=60287 Ken Sharp <imwellcushtymelike@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, source, testcase -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=60287 --- Comment #1 from Gabriele <gab.pulcio@gmail.com> --- Is this, somehow, related to when earlier I tried to record a game, using OBS and OBS_VKCAPTURE variable, and the pointer got captured in the center of the screen (with the option "capture pointer")? Game running in wayland mode. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla