https://bugs.winehq.org/show_bug.cgi?id=38282
Bug ID: 38282 Summary: Header control fails to update/synchronize listview when columns order changes Product: Wine Version: 1.7.39 Hardware: x86 OS: Linux Status: NEW Severity: normal Priority: P2 Component: comctl32 Assignee: wine-bugs@winehq.org Reporter: dmitry@baikal.ru Distribution: ---
Most simple way to reproduce this is with built-in taskmgr.
1. wine taskmgr 2. switch to 'Processes' tab 3. drag 'PID' column header after/before 'Image Name' 4. observe painting bugs 5. restart taskmgr and see that header order doesn't match listview contents
Seems to be a comctl32 bug since installing a native one with winetricks fixes the problem.
https://bugs.winehq.org/show_bug.cgi?id=38282
Dmitry Timoshkov dmitry@baikal.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, source
https://bugs.winehq.org/show_bug.cgi?id=38282
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com --- There's a least two separate problems:
1) restoring order when you restart it. What happens is that when HDM_SETORDERARRAY is sent to a header directly Listview has no idea about that fact; 2) reordering that includes main item (which is a leftmost column initially) messes up a list.
https://bugs.winehq.org/show_bug.cgi?id=38282
--- Comment #2 from Nikolay Sivov bunglehead@gmail.com --- Created attachment 51142 --> https://bugs.winehq.org/attachment.cgi?id=51142 patch
This is a cumulative patch I've got so far, it includes several separate changes. As far as I'm concerned this report is about what I named as issue #2 in previous comment. Making reodering through header message working deserves a separate report.
https://bugs.winehq.org/show_bug.cgi?id=38282
--- Comment #3 from Dmitry Timoshkov dmitry@baikal.ru --- (In reply to Nikolay Sivov from comment #2)
This is a cumulative patch I've got so far, it includes several separate changes. As far as I'm concerned this report is about what I named as issue #2 in previous comment. Making reodering through header message working deserves a separate report.
Thanks for working on this. This bug however is basically for steps 1-4 from my original report, step 5 is optional and is there just to confirm the problem with header reordering.
https://bugs.winehq.org/show_bug.cgi?id=38282
--- Comment #4 from Nikolay Sivov bunglehead@gmail.com --- Most important part should work now with 3c9db1df604a0a56ddd769413f20053fa4cdbc4c. Step 5 suggests that we need to relax the way column info is cached, to update it more often. Maybe query all column data before each redraw or something like that. This will need some tests to see what happens if you reorder via header message and query back item positions for example - are those updated or not, as far as I know task manager is a first application that depends on that feature. For now I'll probably patch task manager itself a bit and file a bug for Step 5.
https://bugs.winehq.org/show_bug.cgi?id=38282
Dmitry Timoshkov dmitry@baikal.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |3c9db1df604a0a56ddd769413f2 | |0053fa4cdbc4c Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #5 from Dmitry Timoshkov dmitry@baikal.ru --- Thanks Nikolay.
https://bugs.winehq.org/show_bug.cgi?id=38282
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 1.7.40.