[Feature]: Add colorblind-friendly diff colors setting #6711
Closed
TimCrooker
started this conversation in
Ideas
Replies: 3 comments
|
Looks like the PRs that address this have all been closed. To reiterate what @TimCrooker reported: the Diff view is unusable for those with red-green colorblindness. This type of colorblindness impacts about 4% of the population, so it's not insignificant. Amazing product otherwise, thanks for all the hard work. |
0 replies
|
Closed as resolved by #10671 (blue/orange diff color palette in appearance settings). |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Before submitting
Area
apps/web
Problem or use case
I'm red-green colorblind, and the diff panel is basically unusable for me. The red/green coloring for additions and deletions blends together, so I can't tell what was added vs. removed without reading each line carefully.
Proposed solution
Add a "Colorblind-friendly diff colors" toggle in Settings > General that swaps the diff panel palette from red/green to blue/orange.
Blue and orange are distinguishable across all common forms of color vision deficiency, including deuteranopia, protanopia, and tritanopia.
Why this matters
About 8% of males have some form of red-green color blindness. Anyone in that group currently can't use the diff panel effectively.
A simple opt-in toggle fixes it with no impact on anyone else.
Smallest useful scope
A single boolean client setting that swaps the CSS color variables on the diff panel.
Four files, roughly 60 lines.
Alternatives considered
Custom themes (#1279) would technically solve this too, but that's a much bigger scope.
A focused toggle is simpler, ships faster, and directly targets the accessibility problem.
Risks or tradeoffs
None significant.
It's opt-in, default-off, client-side only, and uses hardcoded OKLCH values that don't depend on any theme variables.
Examples or references
None significant.
It's opt-in, default-off, client-side only, and uses hardcoded OKLCH values that don't depend on any theme variables.
Contribution
All reactions