https://bugs.winehq.org/show_bug.cgi?id=46309
Bug ID: 46309 Summary: Winamp with Classic Skin "jumps randomly" when moved Product: Wine Version: 4.0-rc2 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: winex11.drv Assignee: wine-bugs@winehq.org Reporter: gabrielopcode@gmail.com Distribution: ---
Split from https://bugs.winehq.org/show_bug.cgi?id=15346
When you move Winamp with classic skin, it jumps around randomly. The faster you move it, the more pronounced this effect is. Eventually it will disappear because it will touch an edge of the screen (but that has more to do with the original bug which is a separate problem).
This is probably due to the fact that we use window-relative coordinates and then translate to screen coordinates ourselves, but those window-relative aren't synced perfectly with the cursor since Winamp chooses to reposition itself when moved.
This should be possible to fix by simply using the X-server-supplied root-relative coordinates and we can even get rid of the redundant transformations after that, as we have them already in screen coordinates (with slight translation), which should even simplify the code on top of it...