Revisions and Commits
|rLIBKLEO24578a0c77ac Add namespace DeVSCompliance for helpers related to compliance
|rLIBKLEO1f46bc248d35 Replace Formatting::deVsString with DeVSCompliance::name
|rLIBKLEOc0179b08182d Add a helper for decorating a button according to compliance
|rLIBKLEO158f02d1f9ce Disable customs colors if high-contrast mode is active on Windows
|rLIBKLEO4ed4a0758cfe Explicitly set foreground color to black
|rLIBKLEO20c149167070 Make colors work with dark themes
|rKLEOPATRA9a8722cb8671 Use DeVSCompliance helper for setting icon and color for compliance
|rKLEOPATRA1d6b96f4f97e Port to helpers in DeVSCompliance namespace
|rKLEOPATRAa2a45abfdcc9 Handle high-contrast mode in certificate categories configuration
|rKLEOPATRA5491ec66736e Disable customs colors if high-contrast mode is active on Windows
|rWb068429a8fbd Update dependencies of libkleo
If the high-contrast mode is active (on Windows), then we disable the usage of custom colors in Kleopatra. This avoids problems with too low contrast due to the custom colors.
For testing purposes, high-contrast mode can be forced by setting the environment variable KLEO_HIGH_CONTRAST_MODE to 1.
There may still be problems with low contrast, if the user selects a "high-contrast" color scheme instead of activating the high-contrast mode.
Most things look good to me, it was automatically enabled when I switched Windows to high contrast mode. The only thing I noticed is that the fields where we explicitly set the background may not look to readable. Especially the Sign&Encrypt buttons because there we don't set the text color.
Did you restart Kleopatra after enabling the high contrast mode? I have implemented that Kleopatra doesn't change/set any background or foreground colors if high contrast mode is detected. Maybe the detection (in SystemInfo::isHighContrastModeActive) doesn't work.
You can check how it should look like by setting the environment variable KLEO_HIGH_CONTRAST_MODE to 1.
On windows the main window looks ok with high contrast mode black. But with dark backgrounds some items in other windows are not readable:
With setting "contrast white" everything in that window is readable.