W3C home > Mailing lists > Public > public-canvas-api@w3.org > October to December 2013

Re: drawsystemfocusring/drawcustomfocusring

From: Rik Cabanier <cabanier@gmail.com>
Date: Fri, 13 Dec 2013 14:33:31 -0800
Message-ID: <CAGN7qDAnbRvWkbgA59kJGP0zpD7NXgEkJL+DFTzwhpxE15q4MQ@mail.gmail.com>
To: Jay Munro <jaymunro@microsoft.com>
Cc: Richard Schwerdtfeger <schwer@us.ibm.com>, Dominic Mazzoni <dmazzoni@google.com>, "eoconnor@apple.com" <eoconnor@apple.com>, Jatinder Mann <jmann@microsoft.com>, Canvas <public-canvas-api@w3.org>
yes, any descendant is allowed.


On Fri, Dec 13, 2013 at 1:13 PM, Jay Munro <jaymunro@microsoft.com> wrote:

>  That sounds ok, though the text currently  says a child of the canvas
> element. If it can be a child of a child, we probably should update that
> too.
>
> Sent from my Windows Phone
>  ------------------------------
> From: Richard Schwerdtfeger
> Sent: 12/13/2013 8:27 AM
>
> To: Jay Munro
> Cc: Rik Cabanier; Dominic Mazzoni; eoconnor@apple.com; Jatinder Mann;
> Canvas
> Subject: RE: drawsystemfocusring/drawcustomfocusring
>
>  I would recommend one tweak.
>
> We should say rendered descendant rather than rendered child to be more
> accurate.
>
> There will be instances where the child may not be a direct child of the
> canvas element. For example, it may be a child of a child.
>
>  Rich
>
>
>
> Rich Schwerdtfeger
>
> [image: Inactive hide details for Jay Munro ---12/12/2013 02:21:31
> PM---With scrollpathintoview, how does this sound for the two lines]Jay
> Munro ---12/12/2013 02:21:31 PM---With scrollpathintoview, how does this
> sound for the two lines that used notional child: The scrollP
>
> From: Jay Munro <jaymunro@microsoft.com>
> To: Richard Schwerdtfeger/Austin/IBM@IBMUS
> Cc: Rik Cabanier <cabanier@gmail.com>, Dominic Mazzoni <
> dmazzoni@google.com>, "eoconnor@apple.com" <eoconnor@apple.com>, Jatinder
> Mann <jmann@microsoft.com>, Canvas <public-canvas-api@w3.org>
> Date: 12/12/2013 02:21 PM
> Subject: RE: drawsystemfocusring/drawcustomfocusring
>  ------------------------------
>
>
>
> With scrollpathintoview, how does this sound for the two lines that used
> notional child:
>
>
> The *scrollPathIntoView()* method, when invoked, must run the following
> steps:
>
>
>    1.    Let *the specified rectangle* be the rectangle of the bounding
>    box of the intended path.
>
>    2.    Let *hidden child* be an element that is a rendered child of the
>    canvas element whose dimensions are those of *the specified rectangle*.
>
>    3.      Scroll *the hidden child* into view with the *align to top
>    flag* set.
>
>
>
> *From:* Richard Schwerdtfeger [mailto:schwer@us.ibm.com<schwer@us.ibm.com>]
>
> * Sent:* Thursday, December 12, 2013 11:07 AM
> * To:* Jay Munro
> * Cc:* Rik Cabanier; Dominic Mazzoni; eoconnor@apple.com; Jatinder Mann;
> Canvas
> * Subject:* RE: drawsystemfocusring/drawcustomfocusring
>
>
> Alright. fallback is safest then as that way we don't include other
> elements with display:none. We should also modify scrollpathintoview to
> refer to fallback content.
>
>
> *http://www.w3.org/TR/2012/CR-2dcontext-20121217/#dom-context-2d-scrollpathintoview*<http://www.w3.org/TR/2012/CR-2dcontext-20121217/#dom-context-2d-scrollpathintoview>
>
> Do others agree?
>
> Rich
>
>
> Rich Schwerdtfeger
>
> [image: Inactive hide details for Jay Munro ---12/11/2013 06:51:17
> PM---Thanks Richard, I understand concept, as it’s essentially link]Jay
> Munro ---12/11/2013 06:51:17 PM---Thanks Richard, I understand concept, as
> it’s essentially linking an onscreen (canvas) element with
>
> From: Jay Munro <*jaymunro@microsoft.com* <jaymunro@microsoft.com>>
> To: Richard Schwerdtfeger/Austin/IBM@IBMUS
> Cc: Rik Cabanier <*cabanier@gmail.com* <cabanier@gmail.com>>, Dominic
> Mazzoni <*dmazzoni@google.com* <dmazzoni@google.com>>, "
> *eoconnor@apple.com* <eoconnor@apple.com>" <*eoconnor@apple.com*<eoconnor@apple.com>>,
> Jatinder Mann <*jmann@microsoft.com* <jmann@microsoft.com>>, Canvas <
> *public-canvas-api@w3.org* <public-canvas-api@w3.org>>
> Date: 12/11/2013 06:51 PM
> Subject: RE: drawsystemfocusring/drawcustomfocusring
>  ------------------------------
>
>
>
>
> Thanks Richard,
>
> I understand concept, as it’s essentially linking an onscreen (canvas)
> element with a hidden element. As the hidden elements get focus, we
> highlight its partner image on the canvas, and supply whatever additional
> accessibility info or state from the hidden element.
>
> By definition, “notional” is defined as imaginary, hypothetical,
> theoretical, or an idea. The fallback elements in Canvas have been termed
> the “shadow DOM”, but they are part of the DOM. If the browser doesn’t
> support Canvas, then the elements are shown. I’m hesitating to introduce a
> new term (notional child/children) as I’m not sure using it would make it
> clearer. I’d rather use “hidden” or “fallback elements” and see the action
> defined, than label them with a new term.
>
> -Jay
>
> >>
> In canvas accessibility fallback elements (between canvas start and end
> tags) are used to represent important objects drawn on the physical canvas.
> These fallback elements are used in the keyboard navigation order and they
> supply accessibility information to the browser which will then in turn map
> that information to platform accessibility API services.
>
> These fallback elements are considered to be "notional children" as they
> are not actually drawn to the glass as they are hidden by the canvas tag.
> However, because they are hidden we need a vehicle to provide their
> location to assistive technologies which these APIs do. For example, when
> we call drawSystemFocusRing(element):
>
> The current path will get mapped to a bounding rectangle for the element
> in fallback content. Since these are notional children their location is
> not typically adjusted when the container they reside in scrolls. What we
> are saying is that when the page scrolls these "notional children" must
> also have their location adjusted the same way the canvas element location
> gets adjusted by the user agent.
>
> When you are tabbing through the web page these fallback elements can be
> included in the tab order (e.g. tabindex="0"). When this occurs the canvas
> element may not be visible in the user agent due to the viewport of the
> browser. In this case (the same way we do with hyperlinks) the focus must
> be scrolled into view after the focus change occurs.
>
> drawSystemFocusRing and drawCustomFocusRing are called by the author when
> a focus change occurs. I am not sure when the scroll would occur - after
> the focus event is fired in the DOM or before. Do you know?
>
> Rich
>
> Rich Schwerdtfeger
>
> [image: Inactive hide details for Jay Munro ---12/10/2013 10:41:31
> AM---Richard, On your inserted text below, are you thinking that wou]Jay
> Munro ---12/10/2013 10:41:31 AM---Richard, On your inserted text below, are
> you thinking that would be an addendum to the procedure li
>
> From: Jay Munro <*jaymunro@microsoft.com* <jaymunro@microsoft.com>>
> To: Richard Schwerdtfeger/Austin/IBM@IBMUS, Rik Cabanier <
> *cabanier@gmail.com* <cabanier@gmail.com>>
> Cc: Dominic Mazzoni <*dmazzoni@google.com* <dmazzoni@google.com>>, Canvas
> <*public-canvas-api@w3.org* <public-canvas-api@w3.org>>, Jatinder Mann <
> *jmann@microsoft.com* <jmann@microsoft.com>>, "*eoconnor@apple.com*<eoconnor@apple.com>"
> <*eoconnor@apple.com* <eoconnor@apple.com>>
> Date: 12/10/2013 10:41 AM
> Subject: RE: drawsystemfocusring/drawcustomfocusring
>  ------------------------------
>
>
>
>
>
> Richard,
>
> On your inserted text below, are you thinking that would be an addendum to
> the procedure list or replacing some text?  I’m also wondering about the
> idea of a “notional child” and hypothetical elements. Are you talking about
> the ring itself or the element that the ring is highlighting when focused?
> I haven’t seen those phrases in documentation before.
>
> -Jay
>
>
>
> >> Richard said:
>
>
> * <rss> drawSystemFocusRing() and drawCustomFocusRing() refer to a
> descendant of the canvas element. These descendants are each considered **a
> notional child*
>
>
>
>
>
> *. Notional children are hypothetical elements that are rendered children
> of the canvas element and their dimensions are those of the bounding box of
> the specifed path. When tabbing to a notional child, having an assigned
> location through the use of drawSystemFocusRing or drawCustomFocusRing,
> scroll the notional child into view following the steps defined by
> scrollPathIntoView.   When a canvas elements is scrolled as a result of
> being contained within an element having CSS stylle overscroll:scroll,
> notional children having an assigned location through the use of
> drawSystemFocusRing or drawCustomFocusRing, scroll the notional children
> bounds by the same change in position as the corresponding canvas element.
>   </rss>*
>
> >>
>


graycol.gif
(image/gif attachment: graycol.gif)

Received on Friday, 13 December 2013 22:34:00 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:31:55 UTC