This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
4.4 HTML Element Role Mappings input (type attribute in the Time state) As I implements AX Role-mapping on chromium, I discussed some issue related to 'input (type attribute in the Time state)' with a reviewer, Dominic. Here is the comment from him. > The most important issue is that it has to work for users. > > Try this: create a webpage with <input type="time"> in it, then open Chrome > Developer Tools. Click on the "Settings" button (Gear icon), then check the box > labeled "Show user agent shadow DOM". Now inspect the time control and you'll > see something like this: > > <input type="time"> > #shadow-root (user-agent) > <div pseudo="-webkit-datetime-edit" id="date-time-edit" datetimeformat="h:mm > a"> > <div pseudo="-webkit-datetime-edit-fields-wrapper"> > <span role="spinbutton" aria-valuetext="11" aria-valuemin="1" > aria-valuemax="12" aria-help="Hours" pseudo="-webkit-datetime-edit-hour-field" > aria-valuenow="11">11</span> > <div pseudo="-webkit-datetime-edit-text">:</div> > <span role="spinbutton" aria-valuetext="59" aria-valuemin="0" > aria-valuemax="59" aria-help="Minutes" > pseudo="-webkit-datetime-edit-minute-field" aria-valuenow="59">59</span> > <div pseudo="-webkit-datetime-edit-text"> </div> > <span role="spinbutton" aria-valuetext="AM" aria-valuemin="1" > aria-valuemax="2" aria-help="AM/PM" pseudo="-webkit-datetime-edit-ampm-field" > aria-valuenow="1">AM</span> > </div> > </div> > <div pseudo="-webkit-clear-button" id="clear" style=""></div> > <div pseudo="-webkit-inner-spin-button" id="spin"></div> > > This is what's actually seen in the layout tree and accessibility tree. Though > the web author only added one DOM element to the page, we actually end up with 4 > separate controls: > > * An hour picker (spin button) > * A minute picker (spin button) > * An AM / PM picker (spin button) > * A clear button (button, not currently accessible but probably should be) > > From the point of view of assistive technology, there should be four separate > controls on the page. They're all related and they're all grouped, but they're > separate. > > Mapping <input type=time> to ROLE_SYSTEM_SPINBUTTON basically says that the root > of this subtree of elements should be a spin button - but it's not. It's a > wrapper that has other elements inside. So, we think that input (type attribute in the Time state) should have a group role or something like IA2_ROLE_DATE_EDITOR, not just ROLE_SYSTEM_SPINBUTTON.
had a look into it and have updated mappings, http://rawgit.com/w3c/aria/master/html-aam/html-aam.html#el-input-time what do you think?
Sounds reasonable to me.
That looks like a good explanation, thanks!
Hi Steve, After I looked into it for a while, I have one thing I'd like to clarify. According to the updated version, MSAA+UIA : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING MSAA+IA2 : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING ATK: ATK_ROLE_SPINBUTTON or ROLE_PANEL. AX: AXTimeField I think three of them, MASS+UIA, MSAA+IA2 and ATK are consistent but AX it not. In order to make it consistent with others, it could be "AX: NSAccessibilityIncrementorRole(AXIncrementor) or NSAccessibilityGroupRole(AXGroup)”. *NSAccessibilityIncrementorRole is used for SpinButtonRole on Mac. But, the important thing is that only AX has the specific role for input-time differently from other platforms. Even if other platforms have ROLE_DATE_EDITOR, IA2_ROLE_DATE_EDITOR and ATK_ROLE_DATE_EDITOR, we could say that they are for input-date, not input-time. My guess is that if there is specific role for input-time like Mac, it is a high priority and if there is no specific role for input-time, SPIN Button and Grouping are proper. I’d like to understand background correctly. If I missed something, please let me. Thanks,
I think there's confusion with names. MSAA ROLE_SYSTEM_SPINBUTTON is a text field [1]: "The object represents a spin box, which is a control that allows the user to increment or decrement the value displayed in a separate "buddy" control that is associated with the spin box." [1] https://msdn.microsoft.com/en-us/library/windows/desktop/dd373608%28v=vs.85%29.aspx
(In reply to alexander surkov from comment #5) > I think there's confusion with names. MSAA > ROLE_SYSTEM_SPINBUTTON is a text field [1]: > > "The object represents a spin box, which is a control that allows the user > to increment or decrement the value displayed in a separate "buddy" control > that is associated with the spin box." > > [1] > https://msdn.microsoft.com/en-us/library/windows/desktop/dd373608%28v=vs. > 85%29.aspx what's the confusion?
(In reply to Julie Jeongeun Kim from comment #4) > Hi Steve, > After I looked into it for a while, I have one thing I'd like to clarify. > > According to the updated version, > MSAA+UIA : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING > MSAA+IA2 : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING > ATK: ATK_ROLE_SPINBUTTON or ROLE_PANEL. > AX: AXTimeField > > I think three of them, MASS+UIA, MSAA+IA2 and ATK are consistent but AX it > not. > In order to make it consistent with others, > it could be "AX: NSAccessibilityIncrementorRole(AXIncrementor) or > NSAccessibilityGroupRole(AXGroup)”. > *NSAccessibilityIncrementorRole is used for SpinButtonRole on Mac. > > But, the important thing is that only AX has the specific role for > input-time differently from other platforms. > Even if other platforms have ROLE_DATE_EDITOR, IA2_ROLE_DATE_EDITOR and > ATK_ROLE_DATE_EDITOR, > we could say that they are for input-date, not input-time. > > My guess is that if there is specific role for input-time like Mac, it is a > high priority and > if there is no specific role for input-time, SPIN Button and Grouping are > proper. > > I’d like to understand background correctly. > If I missed something, please let me. > Thanks, Hi Julie, are you proposing any chnage to the current spec text?
(In reply to steve faulkner from comment #7) > (In reply to Julie Jeongeun Kim from comment #4) > > Hi Steve, > > After I looked into it for a while, I have one thing I'd like to clarify. > > > > According to the updated version, > > MSAA+UIA : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING > > MSAA+IA2 : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING > > ATK: ATK_ROLE_SPINBUTTON or ROLE_PANEL. > > AX: AXTimeField > > > > I think three of them, MASS+UIA, MSAA+IA2 and ATK are consistent but AX it > > not. > > In order to make it consistent with others, > > it could be "AX: NSAccessibilityIncrementorRole(AXIncrementor) or > > NSAccessibilityGroupRole(AXGroup)”. > > *NSAccessibilityIncrementorRole is used for SpinButtonRole on Mac. > > > > But, the important thing is that only AX has the specific role for > > input-time differently from other platforms. > > Even if other platforms have ROLE_DATE_EDITOR, IA2_ROLE_DATE_EDITOR and > > ATK_ROLE_DATE_EDITOR, > > we could say that they are for input-date, not input-time. > > > > My guess is that if there is specific role for input-time like Mac, it is a > > high priority and > > if there is no specific role for input-time, SPIN Button and Grouping are > > proper. > > > > I’d like to understand background correctly. > > If I missed something, please let me. > > Thanks, > > Hi Julie, are you proposing any chnage to the current spec text? Hi Steve, Previously I tried to map the role to the Group on Mac without understanding it deeply. After I think that way above, I have no concern about the current version now.
(In reply to Julie Jeongeun Kim from comment #8) > (In reply to steve faulkner from comment #7) > > (In reply to Julie Jeongeun Kim from comment #4) > > > Hi Steve, > > > After I looked into it for a while, I have one thing I'd like to clarify. > > > > > > According to the updated version, > > > MSAA+UIA : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING > > > MSAA+IA2 : ROLE_SYSTEM_SPINBUTTON or ROLE_SYSTEM_GROUPING > > > ATK: ATK_ROLE_SPINBUTTON or ROLE_PANEL. > > > AX: AXTimeField > > > > > > I think three of them, MASS+UIA, MSAA+IA2 and ATK are consistent but AX it > > > not. > > > In order to make it consistent with others, > > > it could be "AX: NSAccessibilityIncrementorRole(AXIncrementor) or > > > NSAccessibilityGroupRole(AXGroup)”. > > > *NSAccessibilityIncrementorRole is used for SpinButtonRole on Mac. > > > > > > But, the important thing is that only AX has the specific role for > > > input-time differently from other platforms. > > > Even if other platforms have ROLE_DATE_EDITOR, IA2_ROLE_DATE_EDITOR and > > > ATK_ROLE_DATE_EDITOR, > > > we could say that they are for input-date, not input-time. > > > > > > My guess is that if there is specific role for input-time like Mac, it is a > > > high priority and > > > if there is no specific role for input-time, SPIN Button and Grouping are > > > proper. > > > > > > I’d like to understand background correctly. > > > If I missed something, please let me. > > > Thanks, > > > > Hi Julie, are you proposing any chnage to the current spec text? > > Hi Steve, > Previously I tried to map the role to the Group on Mac without understanding > it deeply. > After I think that way above, I have no concern about the current version > now. thanks Julie,will close this bug then.