Sections

2025-03-22

Wine and Windows Dark Mode

So Windows 10 came out in 2015 and even after 10 years and end of support (or does it count from 22H2 instead?), old MFC apps still disobey the Dark Mode settings, making my eyes bleed, which is bad UX. Windows 11 didn't fix that, and neither restored the old classic themeing. The only way to have a system wide dark mode is to use ugly High Contrast themes or registry hacks to where the regular theme settings would have been, optionally aided by 3rd party apps like Classic Control Panel. I made some classic themes for Windows 7 and XP, but they don't work anymore. When transitioning to Manjaro Cinnamon, I made an effort to match the Wine theme to the Mint-Y-Dark theme. I've been quite happy with it. Its main purpose is to skin OpenMPT, whose devs are considering a Qt rewrite instead of a dark mode hack-in. The theme is entirely grayscale, so all RGB values are the same. The names of each setting are localized, and I forgot the Czech correspondence. Some weren't exposed in the old Windows and were derived instead.

Some things look visually ugly with dark theme on Win11 as it forces its own hacked-on light theme on some MFC controls. May look into my old Grey theme which is black on grey as a compromise. See the Themes folder on my Google Drive for more.


Setting Name                     R   G   B    Additional Values

Active Border                    95  95  95

Active Title Bar                  0   0   0   Size 18

Active Title Bar Gradient        95  95  95   Font Tahoma 8

Active Title Text               223 223 223

Application Workspace            15  15  15

Controls Alternate Background    55  55  55

Controls Background              63  63  63     

Controls Dark Shadow             63  63  63

Controls Highlight              127 127 127

Controls Light                   79  79  79

Controls Shadow                  39  39  39

Controls Text                   223 223 223

Desktop                          15  15  15

Gray Text                       127 127 127

Hot Tracked Item                127 127 127

Inactive Border                  63  63  63

Inactive Title Bar               31  31  31

Inactive Title Bar Gradient      63  63  63

Inactive Title Text              95  95  95

Menu Background                  63  63  63   Size 22

Menu Bar                         63  63  63

Menu Highlight                   47  47  47

Menu Text                       223 223 223   Font Tahoma 8

Message Box Text                  -   -   -   Font Tahoma 8

Scrollbar                        95  95  95   Size 16

Selection Background              0   0   0

Selection Text                  223 223 223

Tooltip Background               95  95  95

Tooltip Text                    191 191 191   Font Tahoma 8

Window Background                79  79  79

Window Frame                     63  63  63

Window Text                     191 191 191


Windows Registry keys below. Copy this to a .reg file and merge it.

Wine dark mode:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Colors]
"ActiveBorder"="95 95 95"
"ActiveTitle"="0 0 0"
"AppWorkspace"="15 15 15"
"Background"="63 63 63"
"ButtonAlternateFace"="39 39 39"
"ButtonDkShadow"="63 63 63"
"ButtonFace"="95 95 95"
"ButtonHilight"="127 127 127"
"ButtonLight"="79 79 79"
"ButtonShadow"="39 39 39"
"ButtonText"="223 223 223"
"GradientActiveTitle"="95 95 95"
"GradientInactiveTitle"="63 63 63"
"GrayText"="127 127 127"
"HilightText"="223 223 223"
"HotTrackingColor"="127 127 127"
"InactiveBorder"="63 63 63"
"InactiveTitle"="31 31 31"
"InactiveTitleText"="95 95 95"
"InfoText"="191 191 191"
"InfoWindow"="95 95 95"
"Menu"="63 63 63"
"MenuBar"="63 63 63"
"MenuText"="223 223 223"
"Scrollbar"="95 95 95"
"TitleText"="223 223 223"
"Window"="0 0 0"
"WindowFrame"="63 63 63"
"WindowText"="191 191 191"
"MenuHilight"="223 223 223"
"Hilight"="127 127 127"


XP Grey theme:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Colors]
"ActiveTitle"="31 31 31"
"Background"="63 63 63"
"Hilight"="31 31 31"
"HilightText"="223 223 223"
"TitleText"="223 223 223"
"Window"="223 223 223"
"WindowText"="0 0 0"
"Scrollbar"="191 191 191"
"InactiveTitle"="63 63 63"
"Menu"="127 127 127"
"WindowFrame"="0 0 0"
"MenuText"="0 0 0"
"ActiveBorder"="127 127 127"
"InactiveBorder"="127 127 127"
"AppWorkspace"="63 63 63"
"ButtonFace"="127 127 127"
"ButtonShadow"="85 85 85"
"GrayText"="85 85 85"
"ButtonText"="0 0 0"
"InactiveTitleText"="191 191 191"
"ButtonHilight"="191 191 191"
"ButtonDkShadow"="64 64 64"
"ButtonLight"="127 127 127"
"InfoText"="191 191 191"
"InfoWindow"="63 63 63"
"GradientActiveTitle"="31 31 31"
"GradientInactiveTitle"="63 63 63"
"ButtonAlternateFace"="181 181 181"
"HotTrackingColor"="0 0 128"
"MenuHilight"="10 36 106"
"MenuBar"="212 208 200"

Win7 Grey theme:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Colors]
"Scrollbar"="191 191 191"
"Background"="64 64 64"
"ActiveTitle"="64 64 64"
"InactiveTitle"="128 128 128"
"Menu"="128 128 128"
"Window"="224 224 224"
"WindowFrame"="0 0 0"
"MenuText"="0 0 0"
"WindowText"="0 0 0"
"TitleText"="255 255 255"
"ActiveBorder"="128 128 128"
"InactiveBorder"="128 128 128"
"AppWorkspace"="128 128 128"
"Hilight"="0 0 0"
"HilightText"="255 255 255"
"ButtonFace"="128 128 128"
"ButtonShadow"="85 85 85"
"GrayText"="85 85 85"
"ButtonText"="0 0 0"
"InactiveTitleText"="192 192 192"
"ButtonHilight"="191 191 191"
"ButtonDkShadow"="64 64 64"
"ButtonLight"="128 128 128"
"InfoText"="192 192 192"
"InfoWindow"="63 63 63"
"ButtonAlternateFace"="181 181 181"
"HotTrackingColor"="64 64 64"
"GradientActiveTitle"="64 64 64"
"GradientInactiveTitle"="128 128 128"
"MenuHilight"="10 36 106"
"MenuBar"="212 208 200"


Don't quote me on the additional values. Some may prefer larger bars, and also it may be beneficial to choose a more Unicode font at a more readable size. Possibly the colors could be quantized to 16 or 32 shades of grey, as available in ARGB4 or A1RGB5 (also known as High Color). Some crappy LCDs are actually only 6 bits per color channel, like 18-bit color. But if you aren't blind, please don't use crappy LCDs, your eyes and visual cortex matter. VESA DSC works a lot like QOI and uses 32 last seen colors, so it fits the theme color palette nicely. It may degrade with a lot of ClearType text.

There could be some use in adapting the slightly colorized Getmania theme. Sort of like Chocolate or Bespin in Notepad++, hovering around the Quake brown aesthetic, because that's a dark and warm color. Blue light is considered harmful due to melatonine modulation. But that wouldn't fit with other Dark Modes which are dark grey.


No comments:

Post a Comment

Barely anyone comments, so I don't moderate. Free advertising, I guess.