-
Notifications
You must be signed in to change notification settings - Fork 125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Non-optional popup menu on Tab seems problematic #1630
Comments
@carmacleod @mcking65 Do you have any input on this? |
what was the secondary functionality? it's not uncommon for authors to want to at least add a delete function to a tab, or potentially even create a tab that can then serve as a means to invoke a 'more tabs' sub-menu or sub-tablist |
There is a separate entry and access key in the ARIA APG for deleting. This functionality is not usually hidden in a context menu, but is directly visible via the x icon and can be operated via Del or mouse click.
This is often the case, but should this element really be marked with role=tab? It would not be operable like a tab, but rather a menu button (role=button aria-haspopup=menu). In addition, the question would be how, when marked with role=tab, it is recognisable with a screen reader that a menu can be opened with Shift+F10.
I have never seen that before. Rather, nested tabs are then used. But even if I can call up sub tabs directly via a parent tab, the question would be how the Shift+F10 functionality should be perceptible with the screen reader. I think the reference to Shift+F10 should be removed. Alternatively, the open questions should be answered in ARIA APG or possibly even shown with an example |
@JAWS-test thanks, and I generally agree with you. my comments were specific in wording to comments made by @mbgower, as I was trying to get more information.
why? while mentioned in APG, a I don't think it wise of the APG to remove mention of this key combo so long as a |
@scottaohara Thank you, for the answer. I understand it now. I only see a small problem: aria-haspopup is probably mostly used for popups that can be shown directly, i.e. with left mouse click or by pressing Enter. But in the case of Tab it is now talking about a context menu, which is opened with right mouse click or Shift+F10. Elements with a context menu are usually not visually recognizable, i.e. they can only be found by trial and error. However, I wonder if a user who hears that there is a popup in Tab with screen reader will get the idea that it is a context menu. Maybe an ARIA attribute for context menus should be introduced in the future? |
@scottaohara Some secondary functionality cases we're seeing in our project are for close/delete as you mention, additionally a tooltip for more info, "pinning" or "bookmarking" a tab. Some WIP specs can be seen in carbon-design-system/carbon#8487 My question through all of this is how do these things (even just a close/delete |
tab must not contain interactive elements as child elements because of implicit role=presentation. But tab may contain a context menu and this can offer the required functions. In addition, the functions can be accessed via access keys at the tab (Del for delete, Ctrl+B for bookmark etc) I would recommend to refer to the context menu by description (e.g. aria-description), so that the functions can also be perceived with the screen reader. The icons in the tab must not receive keyboard focus with the tab key. For sighted keyboard users, the challenge is that they have to guess that the icon functions can also be accessed via context menu. |
This issue seems relevant: #1440 |
A team I'm working with is trying to add secondary functionality to a tab item.
I advised them not to do that for what I thought were decent reasons:
It was then pointed out to me that the Aria Authoring Practices lists an associaited pop-up menu as a feature of a tab and provides a non-optional key for its activation.
I'd like to understand the rationale behind that, and how the recommended implementation addresses my points and questions above.
The text was updated successfully, but these errors were encountered: