https://bugs.winehq.org/show_bug.cgi?id=57746
Bug ID: 57746 Summary: BeckyInternetMail/VirtualListView: The ListView of the email list isn't redrawn while receiving email. Product: Wine Version: 10.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: comctl32 Assignee: wine-bugs@winehq.org Reporter: axis6404@proton.me Distribution: ---
Screen recordings of the original operation (win8.1) and the incorrect operation (wine). Please check the attached mp4.
Bug Description:
Win8.1 (correct): - Click on the “Inbox” button. - Press the “Receive Mail” button - Each time an email is received, the email is added to the email list.
Wine (wrong): - Click on the inbox - Press the “Receive Mail” button - Mail is received, but the ListView of the mail list is not updated at all. After switching to another location, such as the outbox, click the inbox again, and the new mail will appear in the ListView.
I used Spy++ to investigate Becky on Win8_1. I found the LVM_SETITEMCOUNT message in the ListView of the Mail List screen. Maybe the Virtual List View is not redrawing properly.
How to Use Virtual List-View Controls https://learn.microsoft.com/windows/win32/controls/use-virtual-list-view-con...
https://bugs.winehq.org/show_bug.cgi?id=57746
--- Comment #1 from axis6404@proton.me --- Created attachment 77948 --> https://bugs.winehq.org/attachment.cgi?id=77948 Recording on Win8.1
https://bugs.winehq.org/show_bug.cgi?id=57746
--- Comment #2 from axis6404@proton.me --- Created attachment 77949 --> https://bugs.winehq.org/attachment.cgi?id=77949 Recording on Linux (wine10.0)
https://bugs.winehq.org/show_bug.cgi?id=57746
axis6404@proton.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Distribution|--- |Debian URL| |https://www.rimarts.jp/down | |loads/B2/bk28108.exe
https://bugs.winehq.org/show_bug.cgi?id=57746
axis6404@proton.me changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
--- Comment #3 from axis6404@proton.me --- Becky has an English version. https://www.rimarts.co.jp/becky.htm
Becky is made with MFC. Bugs are found in 2.81.08 and 2.75.04.
https://bugs.winehq.org/show_bug.cgi?id=57746
axis6404@proton.me changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |tarasov.igor@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=57746
--- Comment #4 from axis6404@proton.me --- I have found the cause/solution of the bug.
Sending LVM_FINDITEMA (Ascii version. not W!) to VirtualListview by SendMessage will send LVN_ODFINDITEMW (Wide version. not A!) to the listview/parent window. Correctly, LVN_ODFINDITEMA (Ascii version. not W!) should be sent. LVN_ODFINDITEMW will be sent for both LVM_FINDITEMA and LVM_FINDITEMW. Therefore, if your program has only LVN_ODFINDITEMA handler, LVN_ODFINDITEMW will be processed by::DefWindowProc and always returns 0. Therefore, LVM_FINDITEMA/ListView_FindItemA will not work at all. It always returns 0. LVN_ODFINDITEMW ! = LVN_ODFINDITEMA
If LVM_FINDITEMA, please send LVN_ODFINDITEMA
The bug is on this line: https://github.com/wine-mirror/wine/blob/e4bf31b67348c3c287f153570ca2c32e941... https://github.com/wine-mirror/wine/blob/e4bf31b67348c3c287f153570ca2c32e941...
Thanks for reading to the end.
https://bugs.winehq.org/show_bug.cgi?id=57746
--- Comment #5 from axis6404@proton.me --- I also found one other bug. It probably won't work if you only have a handler for LVN_ODFINDITEMA(Ascii only).
https://github.com/wine-mirror/wine/blob/e4bf31b67348c3c287f153570ca2c32e941...