Re: Conflicting inclusion/exclusion criteria for elements in the accessibility tree (Was: Re: [ARIA] Agenda: March 3, 2016 WAI-ARIA Working Group)

Joseph,

When doing a widget, it often makes sense to only have one element with
tabindex 0 at a time. That allows the user leave the widget using tab or
shift tab.  If you are using arrow keys to move within the widget, when you
handle an arrow key event, you switch the moved to element to tabindex 0
and the element you moved from to tabindex -1. The developer can call the
onfocus function on the moved to element as part of the key event handling.

I see deep menus done this way as well. This is a normal pattern and one of
the reasons CSS focus-within was needed for keyboard users - to get the
same behavior as CSS hover provides. So you can see CSS for menus that
hover affects the tabindex (and soon to be focus-within).

                                                              
     Regards,                                                 
                                                              
    Fred Esch                                                 
 Watson, IBM, W3C                                             
  Accessibility                                               
                                                              
 IBM Watson       Watson Release Management and Quality       
                                                              






From:	Joseph Scheuhammer <clown@alum.mit.edu>
To:	Amelia Bellamy-Royds <amelia.bellamy.royds@gmail.com>
Cc:	"White, Jason J" <jjwhite@ets.org>, Fred
            Esch/Arlington/IBM@IBMUS, ARIA Working Group
            <public-aria@w3.org>, Richard Schwerdtfeger
            <richschwer@gmail.com>
Date:	03/15/2016 01:58 PM
Subject:	Re: Conflicting inclusion/exclusion criteria for elements in
            the accessibility tree (Was: Re: [ARIA] Agenda: March 3, 2016
            WAI-ARIA Working Group)



On 2016-03-15 1:52 PM, Amelia Bellamy-Royds wrote:
> If something has negative tabindex *and* aria-hidden="true", it should
> definitely not be in the tab order!

How does that work for a keyboard only user?  On the assumption that the
user can see it, wants to put focus on it, and the only way they can is
via TAB navigation ...?

--
;;;;joseph.

'Die Wahrheit ist Irgendwo da Draußen. Wieder.'
                  - C. Carter -




--1__
BBF5EBDFD893E38f9e8a93df938690918c0ABBF5EBDFD893E3
Content-Transfer-Encoding: quoted-printable
Content-type: text/html; charset=ISO-8859-1
Content-Disposition: inline

<html><body><p>Joseph,<br><br>When doing a widget, it often makes sense to only have one element with tabindex 0 at a time. That allows the user leave the widget using tab or shift tab.  If you are using arrow keys to move within the widget, when you handle an arrow key event, you switch the moved to element to tabindex 0 and the element you moved from to tabindex -1. The developer can call the onfocus function on the moved to element as part of the key event handling.<br><br>I see deep menus done this way as well. This is a normal pattern and one of the reasons CSS focus-within was needed for keyboard users - to get the same behavior as CSS hover provides. So you can see CSS for menus that hover affects the tabindex (and soon to be focus-within). <br><br><br>
<table border="0" cellspacing="0" cellpadding="0"><tr valign="top"><td width="473" colspan="2" valign="middle"><div align="center"><font size="4" face="Verdana">Regards, <br><br>Fred Esch <br>Watson, IBM, W3C Accessibility</font></div></td></tr>
<tr valign="top"><td width="130" valign="middle"><img src="cid:1__=0ABBF5EBDFD893E38f9e8a93df938690918c0AB@" width="163" height="23" alt="IBM Watson" align="bottom"></td><td width="342" valign="middle"><font size="4" face="Verdana">Watson Release Management and Quality </font></td></tr></table><br><br><img width="16" height="16" src="cid:2__=0ABBF5EBDFD893E38f9e8a93df938690918c0AB@" border="0" alt="Inactive hide details for Joseph Scheuhammer ---03/15/2016 01:58:43 PM---On 2016-03-15 1:52 PM, Amelia Bellamy-Royds wrote: &gt; I"><font color="#424282">Joseph Scheuhammer ---03/15/2016 01:58:43 PM---On 2016-03-15 1:52 PM, Amelia Bellamy-Royds wrote: &gt; If something has negative tabindex *and* aria-h</font><br><br><font size="2" color="#5F5F5F">From:        </font><font size="2">Joseph Scheuhammer &lt;clown@alum.mit.edu&gt;</font><br><font size="2" color="#5F5F5F">To:        </font><font size="2">Amelia Bellamy-Royds &lt;amelia.bellamy.royds@gmail.com&gt;</font><br><font size="2" color="#5F5F5F">Cc:        </font><font size="2">&quot;White, Jason J&quot; &lt;jjwhite@ets.org&gt;, Fred Esch/Arlington/IBM@IBMUS, ARIA Working Group &lt;public-aria@w3.org&gt;, Richard Schwerdtfeger &lt;richschwer@gmail.com&gt;</font><br><font size="2" color="#5F5F5F">Date:        </font><font size="2">03/15/2016 01:58 PM</font><br><font size="2" color="#5F5F5F">Subject:        </font><font size="2">Re: Conflicting inclusion/exclusion criteria for elements in the accessibility tree (Was: Re: [ARIA] Agenda: March 3, 2016 WAI-ARIA Working Group)</font><br><hr width="100%" size="2" align="left" noshade style="color:#8091A5; "><br><br><br><tt>On 2016-03-15 1:52 PM, Amelia Bellamy-Royds wrote:<br>&gt; If something has negative tabindex *and* aria-hidden=&quot;true&quot;, it should <br>&gt; definitely not be in the tab order!<br><br>How does that work for a keyboard only user? &nbsp;On the assumption that the <br>user can see it, wants to put focus on it, and the only way they can is <br>via TAB navigation ...?<br><br>-- <br>;;;;joseph.<br><br>'Die Wahrheit ist Irgendwo da Draußen. Wieder.'<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;- C. Carter -<br><br></tt><br><br><BR>
</body></html>

--1__
BBF5EBDFD893E38f9e8a93df938690918c0ABBF5EBDFD893E3--


--0__
BBF5EBDFD893E38f9e8a93df938690918c0ABBF5EBDFD893E3
Content-type: image/gif; 
	name="09721134.gif"
Content-Disposition: inline; filename="09721134.gif"
Content-ID: <1__
BBF5EBDFD893E38f9e8a93df938690918c0AB@>
Content-Transfer-Encoding: base64

iVBORw0KGgoAAAANSUhEUgAAAKMAAAAXCAMAAABQ6Q/RAAADAFBMVEXIx8cxLS5MSUrW1dXx8fE/
Ozzj4+N2c3SRj49oZWaEgYKsq6uenZ26ubmbm5v29vZ7e3tTU1M7OzsfHx/FxcX39/eamppmZmaR
j5AgICCqqqrR0dFaV1gAAAAjHyD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAADe7fL7AAADE0lEQVR4nM2WiW7kIAyGTbhz9O6eCL//U6bYGJJOst2dlaqppUm4
+fhtnAH8+gb7sroZxodWGZfA5UxP52+Ic2qVEbLDxujTLXnOTHydSDxNdC7DR+NvYQK02PLQYBDn
z5dRw04GAPibKIBec2GKuZjyrtbosVZr72J397Xyc+suPshsiOUBvRb4xavlzYoA2tI+XEQTFDfT
rkCFiFLIec8Y82jQ0dIhjOU5lmWGa254owKe/J5xPDBqdYHLphZBm08Zi5/nOnEsEUmHwiG6cx3X
Z6k8ID5c6kgHHC4YlblkJHcNlotO7Xp0RVP6lLFIPtTmsuDQDn+FGT4YTy3OXcTFEy85VUYonQMQ
WHWopSIdR83aTYRs5bBD9cz+VjBjyI3RbVEkSu7ed/XF8r18ExXF25ZJiWnk/RhD1S1JlFT5mLGc
B0KYNJG5rtEkLhjPGUVz32Lh2iw+k68WnhqJjeZTldqBr27dFkCz2mlyooxcac0zJUyWM8YKFnn8
KLofdFy7brvwXLctZs+6KScOTrSr6uft2y4SmJqa+tUcxPeKY/iEcc4+W8qNfYUrdSTtYvnRrfE1
rgk1QOqBs207ideoc2gLJGFMtEQ6YQy53OvwA1DifmM86PhQKxSZ66+uI/o6zdVcMmwtRHrBiGbm
XWysp2FTjbERHHUEPXAgtDRxrY5Vfsvph6PebGnFvmcswSnp2PcDcECPdYzkz2M8ziBH9rtl8c/3
Gh/X9TtuOhphWyToedNUzEp0boyZ8zQNnHLrXIhLy5jplBHVINnHmKj+415Lamt+QAdWDkphmcC5
mh8lodvqNsOqDyHw5GjamHjKGLKEj66LuK7i5XfmsVbwdX1+leL9vTiLIiTy8qFFjHwygjQA7j46
sUc/oxpoY4w9YzRW+RbsZeJ135mnJ9ErCuv8T4yqCGH6zYoGOyOXDowSqJ5yRtq6jzq2/z2IL7+l
H58eaWxMiULLlRjUOCU2+kfKNkkDuam8KJP6eqPB0+eIU7PexswpjQdG5AAJEOL1X+vPt/7/cuLg
UP7L/QtHfANvSEKvsxvttAAAAABJRU5ErkJggg=


--0__
BBF5EBDFD893E38f9e8a93df938690918c0ABBF5EBDFD893E3
Content-type: image/gif; 
	name="graycol.gif"
Content-Disposition: inline; filename="graycol.gif"
Content-ID: <2__
BBF5EBDFD893E38f9e8a93df938690918c0AB@>
Content-Transfer-Encoding: base64

R0lGODlhEAAQAKECAMzMzAAAAP///wAAACH5BAEAAAIALAAAAAAQABAAAAIXlI+py+0PopwxUbpu
ZRfKZ2zgSJbmSRYAIf4fT3B0aW1pemVkIGJ5IFVsZWFkIFNtYXJ0U2F2ZXIhAAA7


--0__
BBF5EBDFD893E38f9e8a93df938690918c0ABBF5EBDFD893E3--

Received on Wednesday, 16 March 2016 13:53:50 UTC