Canvas Accessibility Sub-Group Teleconference

17 Feb 2014


Rich_S, Jatinder_Mann, Jay_Munro, Rik_Cabanier, Mark_Sadecki
Mark Sadecki
Mark Sadecki


Date: 17 February 2014

<scribe> scribe: Mark Sadecki

<scribe> scribeNick: MarkS

Progress update on Mozilla Hit Regions work

RC: I only implemented a small subset of Hit Regions. Only the parts necessary to inform the AAPI

RS: If its not a regular HTML control, it gets kicked out?

RC: yes, I have not implemented that far into the spec yet.

Plan for Hit Regions

RS: What Ian is trying to do is tying it to standard controls. Authors may not want to be confined to using just those controls.

JMann: Has Chrome dropped support for drawFocusIfNeeded()

RC: Dominic withdrew request to ship drawFocusIfNeeded() because of uncertainty in the spec.
... he was not comfortable with his own propsal anymore in light of the discussions at Mozilla.

RS: Alexander Surkov, wanted to check with Ian about the drawFocusIfNeeded(). Ian changed his spec to indicate that you should use Hit Regions for this
... so that is what Mozilla did. Its a big job doing all the stuff Ian is asking for. David Bolter said they were a bit too strong in saying they were not going to go do it.
... they just wanted to try out Hit Regions

JMann: So Ian said the regions should be described with Hit Regions, where does that leave drawFocusIfNeeded()?

RC: the only change would be to step 3, which would be removed. They had issue with using it to inform the AAPI

JMann: So they said drawFocusIfNeeded() should not update AAPI at all, just draw focus.

RS: Whatever convention the browser uses for focus rings will get used.

JMann: The most convincing part of this feature was the update of the AAPI
... are we saying that devs will need to implement both drawFocusIfNeeded() and Hit Regions to get this working?

RS: That is correct, that is what they want.

JMann: That seems like a lot of work.
... Draw the path, drawFocusIfNeeded() then add the Hit Regions. Don't need to add the Hit Regions everytime.

RC: You don't need to specify a path.

RS: My problem with what they have is that Ian has tried to restrict the controls you can use in Fallback. Any element can receive focus in HTML with tabindex. Anything can be in fallback content. You can attach a keyboard handler, etc. Could even route mouse events to the element.

RC: I think that just needs to be changed.

Taking Canvas back to LC

JMann: was there a WHATWG issue with our spec?

RS: If we agree to get rid of step 3, we might need to have that moved directly into the WHATWG spec.
... Ian was making a statement that we were stealing his work and forking it. I thought the stuff that was in his spec would be moved over to our spec when complete.

JMann: Today we are taking snapshots of WHATWG. His issue was that we had these discussions. How have we been coordinating with Ian?

RC: We have filed bugs against the spec.
... drawFocusIfNeeded() was the first time we deviated from that process

RS: so what do we do, issue a change request?

RC: we would have to go to their list and discuss it, but Microsoft is not allowed to do that.

JMann: can we open a bug on their spec?

RC: yes.

JMann: He will try to raise issues, but that could be a healthy thing anyway.

RS: This is really big. I doubt we can pull this into a 1.0 spec. Hit Testing

RC: If canvas needs to be accessible, we are going to have to either fold Hit Regions in to our spec, or get the previous propsoal of drawFocusIfNeeded() added in to WHAT WG spec.

JMann: What if we implement drawFocusIfNeeded() with step 3 cut out. Leave that in L1 spec. If we try to scope Hit Regions into L1, we could poorly implement it or delay Canvas L1

RS: If we split them off, then a magnifier will not be able to work with Canvas.

JMann: There are standards and there are implementations. Why can't we just promote the supported features in the browsers rather than the spec.

RS: The API keeps changing, and apps are breaking.
... Path still needs to be brought in.
... fillRule, cursor, a lot of stuff here.

RC: all of that is absent

RS: I would think you would need Hit Region, and element to associate it with. The rest of the stuff could come in L2.
... if we can't do that in a reasonable amount of time, I don't see a problem with leaving step 3 in there.
... we could give one precedence over the other in L2. That would be very easy to do.

RC: we currently don't have 2 implementations of drawFocusIfNeeded()

RS: I think they would allow that to go in. I would have to ask David Bolter.

RC: Rich is saying that we can keep step 3 in there and then remove it from L2 and use precedence to make it all work.

JMann: so if I had Hit Regions and drawFocusIfNeeded() both specifying a path, what would happen

RS: Hit Regions would take precedence.
... what you would say in L2, you would say if a Hit Regions was applied to an element, abort this step (setting the location)
... should be easy

JMann: Just thinking this might be confusing for a develper when L2 comes out.
... I wouldn't want to change the API so much just to achieve this.

RS: the problem is canvas going out without accessibility. no magnifiers will be able to zoom to those elements in fallback

JMann: What if L1 doesn't support any. Then L2 comes out 6 months later and everything is stable.

RS: where do you point developers?

JMann: I don't think developers read specs, there are other ways to inform the developers.

RS: I'm not totally convinced we can get L2 out in 6 months

JMann: I want to finish up and get iplementations, but I feel like we all want to get on L1 train, but making too many compromises to do it.

RS: One of the things we are dealing with right now, and everyone else will too is 508 Refresh. This requirement will be a part of that. If we can't point to a spec that supports it, we have a problem.

JMann: What is 508?

RS: [Background in Section 508]

JMann: What about a heartbeat spec?

RS: What about this stuff with WHATWG

JMann: As long as IE FF and Google are on board, I don't think its an issue

RS: We tried to get Hit Regions in a year ago, and people just didn't have the cycles to deal with it.

JMann: lets continue these discussions, we've been very productive so far.

RS: This means you need to have an L1 spec that doesn't support a11y,

JMann: What is the timeline for getting the minimal stuff in.

RC: I don't know how much work will be involved to get all of Hit Regions in there.

JMann: Is it realistic to get just the a11y stuff done in L1, and the rest in L2?

RC: We would never be able to go to CR if nobody will have implemented Step3

RS: Do we know that for sure? I would find that out.

JMann: Another option, the 1.1 option, an incremental release that just adds the accessibility features..

RS: I think that will be fine, but I don't know how long it would take to knock out a 1.1

JMann: Sounds like a lot of the concerns people have seem to be around doing these together.
... do we need to put Path in an a11y solution?

MS: I'd like to add another option, we ask the HTML WG for more time for Canvas to go back to LC. As it stands, Canvas is not accessible, we need more time.
... I suggest we file bugs on the WHAT WG spec on just the features we need to make Canvas minimally accessible; just the Hit Regions and Path parts needed to inform AAPI, then we get them to add the drawFocusIfNeeded() that doesn't inform the AAPI, then pull all of that into our spec and publish L1. Then we can work on all the rest of Hit Regions and Path in L2.

JMunro: Rik you were in a discussion of Path and drawing shapes.

RC: I think Path is still on the table.

JMann: What do we think about that.

RC: Will we get permission to support a version of canvas without accessibility?

JMann: It sounds lke for L1 we want drawFocusIfNeeded() without the location, the Hit Regions without fillRule

RC: all we are affected by is the regions, not the fillRule, the area,

JMann: we can get rid of path, get rid of non-zero, ...

RS: Under step 10, there is so much of this that I would get rid of, its not necessary for us right now.
... the fallback could be a div or span, you can't say that it has to be of this limited set of control

JMann: I think we snhould upate L1 spec with the min parts we want, in L2, we include everything we want to include fully, and that will match the WHATWG spec. File bugs against WHAT WG, then get everybody to implement.
... Do we want to ask first?

RC: I think Ian should be pretty happy with that approach.
... we're not going ot make ourselves incompatible.

JMann: so L2 will just be an effort to converge with their spec.

RS: I think this s parocess coordination effort with the editors.

RC: I can propose that, but I don't think he is going to care. He won't reply.

JMann: Are we suggesting any other changes to his spec?

RC: Supporting other elements. We will need to file a bug for that.

JMann: This is where we slow down. We should probably coordinagte with him on that.

RC: I've been sending Ian a bunch of stuff about this and so has Dominic, but he says he is not interested in a11y. So we need to take it to their list.

JMann: the whole WHAT WG thing is a process thing. Let's get what we want in our spec and then try to get them to change theirs.
... so we want to talk to Dominic.

RS: I think we get agreement with Dominic and David Bolter and Alex Surkov. We are going to take a shorter version of this, file bugs against WHAT WG for Hit Regions and drawFocusIfNeeded(). Ian will probably just close them out. We'll just see if they agree with that approach.
... I think it should come from the editors.

JMunro: before we send it to Ian, we should float it with the Chairs, we should talk to Paul.

Bug 11342

MS: from the HTML A11y TF: http://www.w3.org/2014/02/12-a11y-bugs-minutes.html#item01

RS: Text Metrics is not in L1

JMunro: Only width is implemented

RS: Should move this to L2

JMunro: I can reopen this on L2.

Summary of Action Items

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.137 (CVS log)
$Date: 2014-02-19 21:47:00 $