https://bugs.winehq.org/show_bug.cgi?id=52436
Bug ID: 52436 Summary: In Light Blue theme, checkable toggle buttons (BS_AUTOCHECKBOX) look unchecked when hovered Product: Wine Version: 7.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: comctl32 Assignee: wine-bugs@winehq.org Reporter: nyanpasu64@tuta.io Distribution: ---
Created attachment 71706 --> https://bugs.winehq.org/attachment.cgi?id=71706 Screenshot of the "checked and hovered" button state in Dn-FamiTracker (which looks unchecked)
- In winecfg -> Desktop Integration tab, set Theme to Light (Color defaults to Blue) and Apply. This bug does not occur on Light -> Classic Blue.
- Download, extract, and run Dn-FamiTracker (https://github.com/Dn-Programming-Core-Management/Dn-FamiTracker/releases/do...).
The toolbar should contain a "Follow-mode" checkable button, checked (blue) by default. This is implemented as BS_AUTOCHECKBOX | BS_PUSHLIKE (https://github.com/Dn-Programming-Core-Management/Dn-FamiTracker/blob/f1d2fc...).
As I mentioned in Bug 52434, I don't like how checked toggle buttons are bright blue.
- Hover the "Follow-mode" button.
The color changes to white with a blue border. If you move your mouse onto the button and immediately stop moving the mouse, the color will fail to change until you move your mouse further. I think this inconsistency is a bug (either in wine or in FamiTracker's redraw handling).
Note that the same "white with a blue border" color scheme appears if you hover the adjacent "Compact view" toggle button (unchecked by default).
- Click the "Follow-mode" button to uncheck it.
It turns blue while clicked, and white with a blue border when released.
- Click it again to check it.
It turns blue while clicked, and white with a blue border when released. The problem is that the "checked and hovered" color scheme looks like it's unchecked (because the button is white), and is indistinguishable from "unchecked and hovered". Only when you move your mouse away from the button does it turn blue again, indicating it's checked.
This behavior is not specific to Dn-FamiTracker. If you download and extract/install and run OpenMPT (https://openmpt.org/download_file.php?file=OpenMPT-1.30.01.00-Setup.exe), then click Help -> Example Modules and click any song, the Mute and Surround buttons at the bottom of the page (https://github.com/OpenMPT/openmpt/blob/062b6264fb9325a8c407908ecfdc6f9fb95c...) also have "checked and hovered" indistinguishable from "unchecked and hovered". However, OpenMPT's toggle buttons reliably turn "white with a blue border", without randomly waiting for mouse movement.
I suspect that the "Light Blue" theme only highlights buttons after your mouse spends a small amount of time lingering over the button (so both regular and toggle buttons don't change color if you rapidly move your mouse over it). But in OpenMPT, the hover timer expiring reliably redraws the button in hovered state, whereas in FamiTracker it doesn't.