Details
-
Task
-
Resolution: Unresolved
-
P2: Important
-
None
-
None
-
None
Description
Make sure to respect system setting in terms of light/dark mode and high contrast.
High Contrast
Discussion points:
- Do we want to go with HightContrast as an flag or enum? It is treated as enum of `{NoPreference, More, Less, Custom}` by W3: https://www.w3.org/TR/mediaqueries-5/#prefers-contrast
It should probably go into StyleHints, next to ColorScheme - Is this orthogonal to `ColorScheme` or part of it?
- should be orthogonal so we can express `Dark with high contrast` vs `Light with high contrast`
- On some systems like Mac high contrast setting is implemented purely by OS and is transparent to an application, we need to take care of respecting that
- Contrast preference should be read only property? We read it from the system, user should not be able to request it explicitly via Qt API?
- We need to come up with some API that would encompass wide range of underlying, a11y and high contrast implementation tends to vary a lot
Practicalities:
To work efficiently as a team we can divide and structure work into independent pieces which could be parallelized:
- Decide on type of `contrastPreference`, add its implementation to StyleHints.
- Provide support of detecting contrast preferences for different platforms:
- Windows
- Gnome/KDE
- WebAssembly
- ...
- Implement support for contrast preference in platform themes:
- Windows
- Gnome/KDE
- WebAssembly
- ...
- Implement support for contrast preference in various styles:
- Fusion
- Adwaita
- Windows
- ...
Attachments
Issue Links
- is required for
-
QTBUG-133595 Accessibility: Respect System Appearance and Theme
-
- Open
-
- mentioned in
-
Page Loading...