-
Notifications
You must be signed in to change notification settings - Fork 328
ENH Make site tree a tab-island #3136
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
base: 6
Are you sure you want to change the base?
ENH Make site tree a tab-island #3136
Conversation
GuySartorelli
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works locally, but:
- Please use an appropriate HTML landmark element as the parent of the island (most likely
nav) - If we're following wcag patterns, when we tab to the tree and a page is open, we should be at that page in the tree (see https://www.w3.org/WAI/ARIA/apg/patterns/treeview/examples/treeview-navigation/)
The underlying library (jstree) we're using is veeery old, brittle, and makes development hard. This recommendation would involve adding state management to the site tree If we wish to do this, at this point I'm thinking we're best off pausing accessibility on the site tree specifically and just rebuilding the site tree in react, which needs to happen at some point. Thoughts on that? |
|
The state should already be managed with a |
|
aria-current is being used on the tree right now There's still a lot of work to do to get the site tree accessible
Given the work remaining, I think we should just rebuild the site tree in react at this point |
|
I think that may be more difficult than you expect - the markup is at least partially done through explicit PHP methods which expect to return markup that updates the tree. Anyone customising those methods should expect their customisations to affect the tree markup. Maybe lets discuss offline and report back here with a decision. |
|
Chatted offline, agreed that while it's not ideal, it's acceptable from a backwards compatibility perspective if rebuild in react and make that default, and we retain the old API and functionality which can be used instead of the new react version via config. |
Issue #3135