comctl32: correct handling of toolbar separators' size
robertshearman at gmail.com
Wed Mar 18 08:36:44 CDT 2009
2009/3/17 Igor Tarasov <tarasov.igor at gmail.com>:
> Currently, wine uses iBitmap property for determining toolbar
> separators width all the time, stating it's an undocumented feature.
> This is not correct.
> According to MSDN, iBitmap is used only on inserting separator (since
> there is no cx field in TBBUTTON structure).
> In other cases, cx property that can be updated via get/set buttoninfo
> is used, as tests show. Also, tests show that this property differs
> from zero only if application specifically sets. Setting it to 0 makes
> separator display in default width. All this is implemented in this
> patch. More tests results in bugtracker (link below).
Please ensure that there are no regressions in the display of IE6's
toolbars after this patch. This is the main user of undocumented
> @@ -4428,7 +4431,7 @@ TOOLBAR_SetButtonInfoA (HWND hwnd, WPARAM wParam, LPARAM lParam)
> if (lptbbi->dwMask & TBIF_LPARAM)
> btnPtr->dwData = lptbbi->lParam;
> if (lptbbi->dwMask & TBIF_SIZE)
> - btnPtr->cx = lptbbi->cx;
> + btnPtr->cx = lptbbi->cx;
> if (lptbbi->dwMask & TBIF_STATE)
> btnPtr->fsState = lptbbi->fsState;
> if (lptbbi->dwMask & TBIF_STYLE)
Whitespace only changes shouldn't be included in patches with other changes.
More information about the wine-devel