This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.

Bug 10249 - Canvas requires a content selection method
Summary: Canvas requires a content selection method
Status: RESOLVED INVALID
Alias: None
Product: HTML.next
Classification: Unclassified
Component: default (show other bugs)
Version: unspecified
Hardware: PC All
: P2 normal
Target Milestone: ---
Assignee: Amcii777
QA Contact: HTML WG Bugzilla archive list
URL:
Whiteboard:
Keywords: a11y, a11ytf, a11y_canvas
Depends on: 10248
Blocks: 8722
  Show dependency treegraph
 
Reported: 2010-07-28 17:03 UTC by Rich Schwerdtfeger
Modified: 2017-05-29 16:56 UTC (History)
12 users (show)

See Also:


Attachments
HTML5 code for difference between images, shapes, pictures, canvas elements, maps, objects with no given or null field for image source in http (12.62 KB, patch)
2015-02-04 02:47 UTC, Amcii777
Details
HTML5 code for difference between images, shapes, pictures, canvas elements, maps, objects with no given or null field for image source in http. I could put an alt=" " but not necessary. What is the H (12.62 KB, patch)
2015-02-04 02:48 UTC, Amcii777
Details

Description Rich Schwerdtfeger 2010-07-28 17:03:55 UTC
This is related to Issue 74. Currently, the HTML accessibility task force is
proposing an API that authors would use to report the selection position to a
browser when editing text. This would be used by the user agent to support
accessibility services to drive magnification during content selection. 

This approach requires an additional work by the author. It would be better if
the author have a method to draw a highlighted selection of content on the canvas in such a way as to also support screen magnifiers. This method would need to report the current selection position to assistive technology using accessibility services layers for each platform. Windows allows for caret tracking so this position would drive a caret tracking. This would also be the case for UNIX systems. On the Mac selected text is processed differently and the current selection position (the position you are pointing at during a selection drag must be reported to assistive technologies). 

As a minimum the new method should take an element that pertains to the element
having the caret in the fallback content or if Charles McCathieneville's
proposal is accepted an element in an area map.

It must be possible for the user agent to assess the coordinates used to draw
the selection. This can be done by either using the drawing path or by passing a
rectangle with coordinates. Carets often very in width and style. For example,
they may be drawn using with a blinking rectangle that inverts the fill area of
the rectangle. 

The severity is marked as normal. However if the proposed caretselectionrect
function is not adopted as as part of Issue 74. This becomes a blocker.
Comment 1 Rich Schwerdtfeger 2010-07-28 17:06:07 UTC
This is related to Issue 74. Currently, the HTML accessibility task force is
proposing an API that authors would use to report the selection position to a
browser when editing text. This would be used by the user agent to support
accessibility services to drive magnification during content selection. 

This approach requires an additional work by the author. It would be better if
the author have a method to draw a highlighted selection of content on the canvas in such a way as to also support screen magnifiers. This method would need to report the current selection position to assistive technology using accessibility services layers for each platform. Windows allows for caret tracking so this position would drive a caret tracking. This would also be the case for UNIX systems. On the Mac selected text is processed differently and the current selection position (the position you are pointing at during a selection drag must be reported to assistive technologies). 

As a minimum the new method should take an element that pertains to the element
having the caret in the fallback content or if Charles McCathieneville's
proposal is accepted an element in an area map.

It must be possible for the user agent to assess the coordinates used to draw
the selection. This can be done by either using the drawing path or by passing a
rectangle with coordinates. Carets often very in width and style. For example,
they may be drawn using with a blinking rectangle that inverts the fill area of
the rectangle. 

The severity is marked as normal. However if the proposed setCaretSelectionRect
method is not adopted as as part of Issue 74. This becomes a blocker.
Comment 2 Michael Cooper 2010-08-31 13:31:22 UTC
http://lists.w3.org/Archives/Public/public-html-a11y/2010Aug/0013.html

The bug triage sub-team recommends the accessibility task force follow this.
Comment 3 Ian 'Hixie' Hickson 2010-09-25 18:28:30 UTC
This is NEEDSINFO for the same reasons as bug 10248.

EDITOR'S RESPONSE: This is an Editor's Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document:
   http://dev.w3.org/html5/decision-policy/decision-policy.html

Status: Partially Accepted
Change Description: see diff given below
Rationale: Need a proposal for how to do this. I can't find any that would work.
Comment 4 Michael Cooper 2011-02-03 16:25:43 UTC
Assign to rich to elaborate or close http://www.w3.org/2011/02/03-html-a11y-minutes.html#item01
Comment 5 Rich Schwerdtfeger 2011-02-03 17:25:48 UTC
Users will need the ability to select content in <canvas> for a broad number of reasons and low vision users require the ability to track the selection with their magnifiers.

As the canvas subtree is designed to represent a one for one representation of what is drawn on the visual canvas, we do have the ability to use the <mark> element in the canvas subtree and apply the aria-selected property to it. This would require a small modification to the ARIA specification to make aria-selected a global attribute. This allows us to annotate the canvas subtree for screen reader vendors so that they can detect the selected content.

We could also use the selection range APIs from the various browsers to do the same thing. What we still lack is the ability of the author to convey where a user is selecting content in canvas during a point and drag operation to be able to drive a magnifier. This requires two things:

1. Convey the caret or selection position during the selection process to a screen magnifier so that the magnifier can zoom at the point on the screen where the author is currently performing the selection.
2. Convey the location of selected content on the screen to a screen reader so that it can zoom to and along the selection area. 

To address 1. we have a modification to the Canvas2DAPI that will allow an author to update the caret or selection point for a screen magnifier during the selection process. We are discussing whether this should belong in the Canvas2dAPI spec. as this is also needed for SVG.
Comment 6 Michael[tm] Smith 2011-08-04 05:03:37 UTC
mass-move component to LC1
Comment 7 Ian 'Hixie' Hickson 2011-11-11 22:50:41 UTC
It's unclear to me what I'm supposed to be doing here. What is the proposal?
Comment 8 Ian 'Hixie' Hickson 2011-12-02 20:54:38 UTC
EDITOR'S RESPONSE: This is an Editor's Response to your comment. If you are satisfied with this response, please change the state of this bug to CLOSED. If you have additional information and would like the editor to reconsider, please reopen this bug. If you would like to escalate the issue to the full HTML Working Group, please add the TrackerRequest keyword to this bug, and suggest title and text for the tracker issue; or you may create a tracker issue yourself, if you are able to do so. For more details, see this document:
   http://dev.w3.org/html5/decision-policy/decision-policy.html

Status: Did Not Understand Request
Change Description: no spec change
Rationale: see comment 7
Comment 9 Léonie Watson 2012-11-15 21:11:24 UTC
Moved to HTML.Next on request of Rich Schwerdtfeger.
Comment 10 Amcii777 2015-02-04 02:47:30 UTC
Created attachment 1568 [details]
HTML5 code for difference between images, shapes, pictures, canvas elements, maps, objects with no given or null field for image source in http

HTML5 code for difference between images, shapes, pictures, canvas elements, maps, objects with no given or null field for image source in http. I could put an alt=" " but not necessary. What is the HTML rule on this object, picture of a shape for a logo at the head of the body or first header?
Comment 11 Amcii777 2015-02-04 02:48:36 UTC
Created attachment 1569 [details]
HTML5 code for difference between images, shapes, pictures, canvas elements, maps, objects with no given or null field for image source in http. I could put an alt=" " but not necessary. What is the H

HTML5 code for difference between images, shapes, pictures, canvas elements, maps, objects with no given or null field for image source in http. I could put an alt=" " but not necessary. What is the HTML rule on this object, picture of a shape for a logo at the head of the body or first header?
Comment 12 Charles McCathieNevile 2016-04-07 14:12:09 UTC
Rich, is this still an issue?
Comment 13 Léonie Watson 2017-05-29 16:56:47 UTC
This appears to relate to the Canvas spec. If it does relate to HTML, please file an issue here:
https://github.com/w3c/html/issues