http://bugs.winehq.org/show_bug.cgi?id=13112
Summary: comctl32 trackbar setPos() should not call oncustomdraw if value hasn't changed Product: Wine Version: CVS/GIT Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: minor Priority: P2 Component: comctl32 AssignedTo: wine-bugs@winehq.org ReportedBy: jaz@pastnotecut.org
Created an attachment (id=12893) --> (http://bugs.winehq.org/attachment.cgi?id=12893) patch against comctl32 for the setpos bug
The SetPos() function of the trackbar component of comctl32 is calling the OnCustomDrawMessage even if it doesn't change the value.
This wouldn't be a problem per se, but in my application I was doing a setFocus inside the oncustomdraw, as well as doing the setpos in a timer. This caused all the buttons in the UI to not operate, because the timer took precedence, and the focus no longer kept at the supposed place. I've already fixed this in my application (since i can do the check), but could affect other applications.
I attach the patch that i've tested which solves it.