<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Oct 10, 2013 at 7:13 PM, Ryosuke Niwa <span dir="ltr">&lt;<a href="mailto:rniwa@webkit.org" target="_blank">rniwa@webkit.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div class="h5"><div class="gmail_extra"><div class="gmail_quote">On Thu, Oct 10, 2013 at 7:09 PM, Rik Cabanier <span dir="ltr">&lt;<a href="mailto:cabanier@gmail.com" target="_blank">cabanier@gmail.com</a>&gt;</span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">On Thu, Oct 10, 2013 at 7:02 PM, Ryosuke Niwa <span dir="ltr">&lt;<a href="mailto:rniwa@webkit.org" target="_blank">rniwa@webkit.org</a>&gt;</span> wrote:<br>


<div class="gmail_quote"><div><div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>On Thu, Oct 10, 2013 at 6:56 PM, Rik Cabanier <span dir="ltr">&lt;<a href="mailto:cabanier@gmail.com" target="_blank">cabanier@gmail.com</a>&gt;</span> wrote:<br>





<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">On Thu, Oct 10, 2013 at 6:08 PM, Ryosuke Niwa <span dir="ltr">&lt;<a href="mailto:rniwa@webkit.org" target="_blank">rniwa@webkit.org</a>&gt;</span> wrote:<br>





<div class="gmail_quote"><div>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">






<div>On Thu, Oct 10, 2013 at 1:35 PM, Rik Cabanier <span dir="ltr">&lt;<a href="mailto:cabanier@gmail.com" target="_blank">cabanier@gmail.com</a>&gt;</span> wrote:<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">









<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">









<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">









<div dir="ltr"><div>Support (behind runtime flags) has landed in:</div>

<div>- Firefox: <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=540456" target="_blank">https://bugzilla.mozilla.org/show_bug.cgi?id=540456</a></div><div>- chrome: <a href="https://code.google.com/p/chromium/issues/detail?id=261998" target="_blank">https://code.google.com/p/chromium/issues/detail?id=261998</a></div>














<div><br></div><div>Focus rings associate elements that are in a canvas tag with areas of the canvas. </div><div>If the user tabs into the hidden element or the accessibility software selects them, these methods will draw or let the author draw the focus rings. </div>













</div></blockquote><div><br></div></div><div>How does this API address this use case?  It seems like each Web app needs to explicitly opt-in and manually draw focus ring?</div></div></div></div></blockquote><div><br></div>











</div><div>That is correct. This is code that the canvas developer needs to implement.</div><div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">










<div dir="ltr"><div class="gmail_extra">
<div class="gmail_quote"><div>I&#39;m not sure if that&#39;s a good accessibility API given that many authors don&#39;t even use most basic accessibility feature such as ARIA roles.</div></div></div></div></blockquote><div>










<br></div></div><div>There&#39;s not much we can do about this. However, for authors that DO want to provide this, there&#39;s is currently no way to provide accessibility for canvas.</div><div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">










<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">

<div><br></div><div>e.g. why can&#39;t UA automatically draw focus ring on top of the canvas?</div></div></div></div></blockquote><div><br></div></div><div>The problem is that the UA doesn&#39;t know what part of the canvas area corresponds with the hidden element. This API is designed to make that association</div>









</div></div></div></blockquote><div><br></div></div><div>Why can&#39;t authors provide that information by placing elements at the area it should be displayed instead?</div></div></div></div></blockquote><div><br></div></div>





<div>

Place invisible elements on top with absolute positioning? That seems error prone + you&#39;d constantly have to change the DOM</div><div>Also, the focus area is not always rectangular. For an example see <a href="http://dmazzoni-google.github.io/canvas-focus-ring-demo/" style="font-size:13px;font-family:arial,sans-serif" target="_blank">http://dmazzoni-google.github.io/canvas-<span>focus</span>-ring-demo/</a></div>






<div>(You will need chorme canary or latest firefox nightly with focusrings turned on)</div></div></div></div></blockquote><div><br></div></div><div>I see. That&#39;s a good use case.</div><div><div><br></div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">





<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">








<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">









<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Also, the spec seems to indicate that the physical (rendered) position of an element can change dynamically without UA being notified.</div>


<div>How are ATs supposed to inform users of the ordering of those focusable elements?</div></div></div></div></blockquote><div><br></div></div><div>I&#39;m unsure I follow. Can you elaborate?</div></div></div></div></blockquote>









<div><br></div></div><div>How are ATs supposed to know the visual ordering of elements if authors are only updating elements&#39; positions by calling drawSystemFocusRing when they are focused is my question.  To put it another way, ATs need to know where elements appear in order to let user move the focus onto those elements.</div>






</div></div></div></blockquote><div><br></div></div><div>What is an AT? :-)</div><div>You don&#39;t call drawSystemFocusRing when an element is focused. You *always* call it and if it is focused, a ring will be drawn. In all cases, the accessibility software is notified of the area.</div>





</div></div></div></blockquote><div><br></div></div><div>WAT. Why is this function called drawSystemFocusRing if it doesn&#39;t draw anything?  I completely misunderstood the API because of its misleading name.  Can we please rename the function?  e.g. defineSystemFocusableArea.</div>





<div><br></div><div>I strongly object to the proposed name.</div></div></div></div></blockquote><div><br></div></div></div><div>No, the function will draw the ring, but only if the element is focused.</div><div>People have gone over the name multiple times and this seems to be the one that&#39;s hated the least :-( </div>



</div></div></div>
</blockquote></div><br></div></div></div><div class="gmail_extra">Only if it&#39;s focused right?  But the point of this function is that defining area for every focusable element upfront.  Then the name of the function should reflect that semantics.  The fact it draws the focus ring synchronously sometimes is almost a side-effect.</div>
</div></blockquote><div><br></div><div>I agree. This is why the feature is still behind a flag in chrome and firefox and on the at-risk list for Canvas.</div><div>Dominic and I want to clarify the text and possible come up with better names. By implementing it, we can start to see the problems with the current wording. </div>
</div></div></div>