Zhiyi Zhang (@zhiyi) commented about dlls/comctl32/toolbar.c:
- case CBEN_ENDEDITW:
if (!infoPtr->bUnicode)
{
NMCBEENDEDITW *nmedW = (NMCBEENDEDITW *)lpnmh;
NMCBEENDEDITA nmedA = {{0}};
nmedA.hdr.code = CBEN_ENDEDITA;
nmedA.hdr.hwndFrom = nmedW->hdr.hwndFrom;
nmedA.hdr.idFrom = nmedW->hdr.idFrom;
nmedA.fChanged = nmedW->fChanged;
nmedA.iNewSelection = nmedW->iNewSelection;
nmedA.iWhy = nmedW->iWhy;
WideCharToMultiByte(CP_ACP, 0, nmedW->szText, ARRAY_SIZE(nmedW->szText), nmedA.szText, ARRAY_SIZE(nmedA.szText),
NULL, FALSE);
return SendMessageW(infoPtr->hwndNotify, WM_NOTIFY, lpnmh->idFrom, (LPARAM)&nmedA);
}
return SendMessageW(infoPtr->hwndNotify, WM_NOTIFY, lpnmh->idFrom, (LPARAM)lpnmh);
I think reusing PAGER_Notify() is a good idea. You did it in your previous versions of MR. Let's rename PAGER_Notify() to COMCTL32_Notify() and move it to commctrl.c. PAGER_Notify() handles many notification codes, but we will only use it to handle CBEN_ENDEDITW here.