Vishwa Jay opened issue #14867: Theme Doesn't Work in App Window at KiCad / KiCad Source Code / kicad

Vishwa Jay
2023-06-02T21:47:10Z

Description

The "Common" branch under the Preferences window has a section for icons to be light or dark.

However, there is no apparent means to control the app window itself. My entire environment switches between light mode and dark mode. I work at home on my projects in a room where people are sleeping, and I don't wish to rouse them. And, as that just happened, this is certainly not a "what if" on my part. It means I don't get to work on my own projects if other people are sleeping.

As this is unexpected behavior (and does not conform to typical behavior of other major apps, which tend to follow the system preference between light mode and dark mode) I am asserting that this is in fact a bug, albeit a difficult one to descript in any kind of concise way.

Proposed fixes:

Add support for detection of and conformance with the system's "Dark Mode" and "Light Mode" settings, at least switching the windows to match what many other apps on the Windows platform now do.

Add a manual switch in the "Common" branch of the Preferences window tree to set the windows light and dark, as the user wishes. I would propose having it near the icon switcher, since that would make much better sense.

Add an overall themability to the windowing system, as has been done with the editor work areas.

If I was a coder, I'd happily figure out some kind of way to do this. As I'm not, all I can do is report what's happening and hope for the best.

Thanks for all the hard work on an otherwise great piece of software!

Steps to reproduce

Load the app in windows.

Change light/dark theme in the Windows preferences.

There is no change to the app window.

KiCad Version

Application: KiCad x64 on x64

Version: 7.0.5, release build

Libraries:
wxWidgets 3.2.2
FreeType 2.12.1
HarfBuzz 6.0.0
FontConfig 2.14.1

Platform: Windows 11 (build 22621), 64-bit edition, 64 bit, Little endian, wxMSW

wxWidgets: 3.2.2 (wchar_t,wx containers)
Boost: 1.81.0
OCC: 7.6.3
Curl: 7.88.1-DEV
ngspice: 40
Compiler: Visual C++ 1936 without C++ ABI

Build settings:
KICAD_SPICE=ON