Esme Povirk (@madewokherd) commented about dlls/comdlg32/navbar.c:
- MEASUREITEMSTRUCT *mis = (MEASUREITEMSTRUCT *)lparam;
- ITEMIDLIST *pidl = (ITEMIDLIST *)mis->itemData;
- SHFILEINFOW file_info = {0};
- IImageList *icon_list;
- icon_list = (IImageList *)SHGetFileInfoW((const WCHAR *)pidl, 0, &file_info, sizeof(file_info),
SHGFI_PIDL | SHGFI_ICON | SHGFI_SMALLICON | SHGFI_SHELLICONSIZE | SHGFI_SYSICONINDEX);
- if (icon_list)
- {
IImageList_GetIconSize(icon_list, (int *)&mis->itemWidth, (int *)&mis->itemHeight);
IImageList_Release(icon_list);
DestroyIcon(file_info.hIcon);
/* add some padding to the right side so that the text isn't so close to the icon */
/* 4px is the default left side padding for MNS_NOCHECK */
mis->itemWidth += 4;
This should probably be DPI-scaled?