Thorsten Kani wrote:
Hmm, sorry- i meant SM_CYBORDER and SM_CYEDGE. (classical past_1:00am typo) testing shows that using SM_CYBORDER instead of SM_CYEDGE affects appearence only minimal. if this bug only appears while using it under windows, it shouldnt be really important.
GetSystemMetrics(SM_CYEDGE) == GetSystemMetrics(SM_CXEDGE) on all known platforms (including Wine) so my comment stands.
Do you agree setting OFFSET_Y to zero is a good compromise in this case ?
It is not a perfect solution. I believe that OFFSET_X and OFFSET_Y should be removed completely, but the other places that these are used (apart from positioning the bitmap) need to be checked. In particular, my testing shows that the padding value doesn't depend on GetSystemMetrics(SM_CXEDGE) and hence should be hardcoded (without OFFSET_{X,Y}).
For the moment, you could submit a patch that removes the calculation of rcBitmap.top and rcBitmap.left based on OFFSET_Y and OFFSET_X.
Rob