Closed Bug 1564993 Opened 6 years ago Closed 6 years ago

Create a simulator actor+front for a11y simulation

Categories

(DevTools :: Accessibility Tools, enhancement)

enhancement
Not set
normal

Tracking

(firefox70 fixed)

RESOLVED FIXED
Firefox 70
Tracking Status
firefox70 --- fixed

People

(Reporter: mislam, Assigned: mislam, Mentored)

References

Details

Attachments

(1 file)

We would like to add color blindness simulations to the accessibility panel.

We need a simulator actor for this, that will be managed by the accessibility actor. Create a simulator front that can connect to the simulator actor. The simulator actor can take advantage of the setColorMatrix docShell method from bug 1431466 to set different color matrices. The simulator actor also needs to load a style sheet (similar to walker: https://searchfox.org/mozilla-central/source/devtools/server/actors/accessibility/walker.js#749) to simulate contrast loss.

Blocks: 1564999
Summary: Create a simulator actor and color space highlighter for color blindness simulation → Create a simulator actor+front and color space highlighter for color blindness simulation
Summary: Create a simulator actor+front and color space highlighter for color blindness simulation → Create a simulator actor+front for color blindness simulation
Attachment #9079761 - Attachment description: Bug 1564993 - Create simulator actor and front → Bug 1564993 - Create simulator actor and front, r=yzen
Summary: Create a simulator actor+front for color blindness simulation → Create a simulator actor+front for a11y simulation
Attachment #9079761 - Attachment description: Bug 1564993 - Create simulator actor and front, r=yzen → Bug 1564993 - Create simulator actor and front, r=yzen,nchevobbe
Pushed by yura.zenevich@gmail.com: https://hg.mozilla.org/integration/autoland/rev/5a009a174052 Create simulator actor and front, r=yzen,nchevobbe
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 70

The simulation matrices used here are unfortunately horribly inaccurate. While the source cited in devtools/server/actors/accessibility/constants.js does not list its source, the matrices appear to be the "colorjack.com matrices" [1] (and do not originate from the scientific literature). As far as I'm concerned, this is worse than not having such a simulation at all, since it gives people a false sense of accommodating individuals with color vision deficiencies.

An improved method with known provenance is to use the method of Machado et al. (2009) [2], which to the best of my knowledge is the state-of-the-art. The paper's supplementary information provides pre-computed matrices [3]; the "severity 1.0" matrices correspond to the "-opia" deficiencies.

It may also be prudent to remove the "-omaly" simulations. These deficiencies span a range of severities, so providing a single simulation gives a false impression as to what particular individuals with such deficiencies see. The "-omaly" simulations were removed from Chromium after this was pointed out [4].

[1] https://github.com/MaPePeR/jsColorblindSimulator#the-colormatrix-algorithm
[2] https://doi.org/10.1109/TVCG.2009.113
[3] https://www.inf.ufrgs.br/~oliveira/pubs_files/CVD_Simulation/CVD_Simulation.html
[4] https://bugs.chromium.org/p/chromium/issues/detail?id=1003700#c31

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: