Contact emails
jinho...@samsung.com, f...@opera.com, dmaz...@chromium.org
Spec
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#hit-regions
Summary
Allows the author to establish regions on a canvas 2D context. These regions can be associated with HTML elements
and they will inherit their ARIA properties. In addition, mouse events will be updated so events that fire on a canvas and
that hit a region, the id of that region is a member of the event.
We should provide following things at least:
- CRC2D.addHitRegion(HitRegionOptions); method
- CRC2D.removeHitRegion(); method
- HitRegionOptions (id, control and so on)
Motivation
Canvas authors are starting to create more complex user interface in canvas that can only could only [sic] map
to several underlying elements ([a] spline editor, for example, would map to several range controls). To enable
a better canvas+fallback DOM coding pattern, it seems prudent to enable easier canvas hit testing and event handling.
In the current HTML5 specification, authors are advised to create a fallback DOM under the canvas element to enable
screen readers and screen magnifiers to interact with canvas user interfaces. The size and position of those elements
are not defined, which causes problems for accessibility tools - what size/position should they report for these elements?
Because canvas elements usually respond to user input, it seems prudent to solve the hit testing and accessibility
issues with the same mechanism. (from http://www.w3.org/html/wg/wiki/ChangeProposals/hitregions#Summary)
Also, Please refer to http://j.mp/a11y-canvas (from http://www.w3c.org/Talk)
Compatibility Risk
Low; It seems that some parts of the features has already been implemented in Firefox. (by Rik)
- http://bugzilla.mozilla.org/show_bug.cgi?id=966591
- http://bugzilla.mozilla.org/show_bug.cgi?id=979692
Ongoing technical constraints
None
Will this feature be supported on all five Blink platforms (Windows, Mac, Linux, Chrome OS and Android)?
Yes
OWP launch tracking bug?
Link to entry on the feature dashboard
http://www.chromestatus.com/features/4761413495029760
Requesting approval to ship?
No