chrisboyle / sgtpuzzles

Android port of Simon Tatham's Puzzles
https://chris.boyle.name/puzzles
Other
597 stars 168 forks source link

Mosaic: errored clues are difficult for color-blind to see #545

Open JohnGlassmyer opened 2 years ago

JohnGlassmyer commented 2 years ago

the only visual indication of the player's coloring of cells conflicting with a clue (number in a cell) is that the text color of the clue numeral changes from black to red.

especially in the case of a cell colored with white background, this { red text vs black text } is difficult for people with red-green color vision abnormalities to see. the red and green cone pigments being on the X chromosome, this sort of color-vision abnormality affects around 8% of males, a large fraction of the user base.

myself, having the mildest and most common sort of color-vision abnormality, "deuteranomaly" (mutated green-cone pigment), i can discern the red from black on white background if i'm looking right at it, but it doesn't stand out enough to reliably draw my visual attention (which i suppose the red color is intended to do). this morning i had to hunt brute-force across the board, somewhat incredulous that the status text at the bottom of the board said "Clues left: 1", and it took me a while to find the red numeral among a field of black numerals.

i would suggest visually indicating errored clue cells in a way that doesn't rely on hue. the idea that comes to my mind is to draw an additional / thicker inset border within these cells. it could even be a red border, which would signal to those able to see the color while the non-color distinctiveness of the thicker border would be readily apparent even to the color-blind.

perhaps testing the app in a grayscale display mode would give a clear idea of how effective a given visual presentation would be to color-blind people.

kohend commented 2 years ago

Thanks for the input, when designing that, I believed the different intensity would suffice as an indication, but it seems I was wrong, I'll think what can be done within the framework and visual constraints. I'm the developer of that game.