Summary
Wine fixes FPS camera jitter by switching to Wayland’s wp_pointer_warp_v1 for proper cursor warping.
The patch avoids pointer locking bugs that dropped warps and caused camera issues.
The fix will land with Wine 11.9; Wayland compositors KWin, Mutter, and wlroots already support the new API.
Gaming on Linux has come a long, long way over the past few years, but it’s still not perfect. It’s dang close, and Linux is catching up to Windows, but it’s not perfect. The good news is that the open-source community is working very hard at ironing out those last bits of resistance that keep games on Linux from working as well as they do on Windows.
If you’ve tried running an FPS title through Wine, you may have noticed that the camera controls feel strange, juddery, or glitchy. It turns out it’s due to how Wine handles the cursor, which affects how FPS games work. Fortunately, the excellent people who make up the Wine community have squashed this nasty bug, so FPS games should work a little better now.
Related
Linux gaming is getting faster because Windows APIs are becoming Linux kernel features
As time goes on, fewer games than ever are unplayable on Linux
Wine now lets you play FPS games without annoying camera issues
Linux scores another big gaming win

As reported by Phoronix, a new patch has been merged into Wine. Titled “winewayland: Use wp_pointer_warp_v1 for SetCursorPos when available,” the patch details what was going wrong with FPS games on Wine. FPS games rely on “cursor warping,” which allows the app to move the cursor wherever it wants on the screen. If you’ve ever triggered a bug in an FPS game that makes your cursor visible, you may have noticed that it ‘sticks’ to the very center of the screen, no matter where you move your mouse. That’s the warping in effect.
The old method had issues with achieving the warp:
The existing SetCursorPos implementation abuses zwp_locked_pointer_v1’s set_cursor_position_hint side-effect: it briefly locks the pointer, sets the position hint, then unlocks. The compositor clamps position hints to locked-surface bounds, so warps to coordinates outside that area are silently dropped, and the lock/unlock cycle has subtle timing and side-effect issues.
Fortunately, in June 2025, the Wayland protocols added wp_pointer_warp_v1, which allows “a direct cursor-warp primitive without requiring pointer locking.” This new tech is already available on KWin 6.4 and above, GNOME’s Mutter 49 and above, and wlroots 0.19 and above. This new Wine patch simply swaps out the old method of warping with this new, shiny method. We should see the fix ship in Wine 11.9, with the next development release due this Friday, so keep an eye out for that if you’re experiencing nasty FPS camera issues.
Related
Wine 11 rewrites how Linux runs Windows games at the kernel level, and the speed gains are massive
Wine 11 is the biggest jump for Linux gaming in years.

