Dimitrie O. Paun wrote:
Can you please explain why updating it is a problem? Yes, we may be doing more work than needed, but at most it should be a no-op. In fact, we used to call 'GetWindowLongW(hwnd, GWL_STYLE)' every time we needed to get to the dwStyle, so updating it in there should be OK.
Unfortunetly I can't explain it, because I don't understand it myself. I have inserted debug messages on all the places where the listview display mode can be changed and none of them appeared. After going once more through the whole code I found this. Obviously it seemed redundant and the only reason for doing that was workarounding problems with changed WS_VSCROLL and WS_HSCROLL styles (which correctly don't recieve WM_STYLECHANGED notifications from the scrolling code). So I tried removing it and ... whoa ... to my surprise it started to work.
BTW, I've tried to install the demo, but the installer dies on my version of wine. Does it work for you, or did you use Windows for the installation?
Yes, I installed it on Windows and even most of done most of the testing on Windows with Wine COMCTL32. Before sending the patch to wine-patches I checked if it works as desired on Wine...
- Filip