Summary: | [Tree] PaintItem does not receive HOT flag if unset in EraseItem | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Eclipse Project] Platform | Reporter: | Thomas Singer <ts-swt> | ||||||
Component: | SWT | Assignee: | Platform-SWT-Inbox <platform-swt-inbox> | ||||||
Status: | NEW --- | QA Contact: | |||||||
Severity: | normal | ||||||||
Priority: | P3 | CC: | alexandr.miloslavskiy, rolf.theunissen, ts-swt | ||||||
Version: | 4.22 | ||||||||
Target Milestone: | --- | ||||||||
Hardware: | PC | ||||||||
OS: | Windows 10 | ||||||||
Whiteboard: | |||||||||
Attachments: |
|
Description
Thomas Singer
2021-10-18 04:35:25 EDT
Created attachment 287327 [details]
Snippet to reproduce
Created attachment 287328 [details]
Screenshot on Windows 10
The hot flag of the item is removed in CDDS_ITEMPREPAINT, when ignoreDrawHot is true. Line 1160: if (explorerTheme) { if (selected || (hot && ignoreDrawHot)) nmcd.uItemState &= ~OS.CDIS_HOT; OS.MoveMemory (lParam, nmcd, NMTVCUSTOMDRAW.sizeof); } When theses lines are commented out, the snipped seems to work. Though, don't have sufficient knowledge about the win32/swt API to fix this issue. |