RE: hit testing and retained graphics

Frankly, I think everyone is getting hung up on the graphics mode. The graphics mode hardly matters. The vast majority of accessibility work does not occur at this level, but rather at one level back, in the object model that draws the graphics. But that doesn't stop anyone from doing the work to say, when I draw this rectangle and then I draw this line inside it that changes color from black to white once per second, then I have created a text field. How such a framework does that is immaterial, as long as it knows those five vectors now mean "text field". It is from there that accessibility hooks can be inserted: role, state, value, size, position, name, description. It's still possible to draw all kinds of bits on the screen without a real model for them, but nobody here is arguing for each of them to have an accessible name. We only want the ability to create a programmatic structure so that we can query and interact with when there is structured data (namely, UI components and things like charts) being presented as canvas content.

Nor does retained mode necessarily mean a better result. The advantage SVG has in this area is not its graphics mode, it's that the model and the view are the same. Flash's aren't, strictly speaking. It's possible to create objects dynamically which can't be referenced programmatically. And if Flash were immediate-mode, we would have roughly the same approach: track size and position of known areas on the screen, and apply semantics to them in the object model.

The core of this problem--applying semantics to arbitrary shapes drawn on a screen--has been solved in Flash since 2002, and its graphics mode had nothing to do with it. This is a red herring.


-----Original Message-----
From: Cameron McCormack [] 
Sent: Wednesday, June 29, 2011 6:16 PM
To: Matt May
Subject: Re: hit testing and retained graphics

Matt May:
> Flash uses retained-mode graphics.

If Flash doesn’t support immediate mode graphics, then I’m not sure how
it would be that the “Bespin/Skywriter canvas-as-UI problem … would have
been reasonably well supported by the accessibility support found in
Flash Player 8”.  Would you not have had to rewrite Bespin with Flash’s
retained mode graphics API (and thus avoiding this whole problem in the
first place)?  Isn’t this the same as people saying “rewrite your app in

Cameron McCormack ≝

Received on Thursday, 30 June 2011 17:00:09 UTC