Quick update on this, I’ve been working on improving our landmarks in a way that should provide a better way to navigate an element list.
Navigating headings in element lists will remain unchanged, but hopefully this provides a reasonable alternative. Changes are outlined here: A11Y: improve landmark navigation and add aria-labels to post controls by awesomerobot · Pull Request #34421 · discourse/discourse · GitHub
In short, what this does is:
-
Provide landmark regions for all posts in the DOM
-
Adds a landmark region that makes it clearer there are more posts above/below — we load/unload posts so we don’t have to use manual pagination, if a topic had hundreds of posts loaded into the DOM at once it could cause performance issues.
Making all of the heading content accessible in the DOM without degrading performance for everyone would be a very complicated change, so this is a bit of a middle-ground. While not perfect, navigating to the “load more content” areas will properly load more posts, at which point the element list can be reopened.
-
I’ve made an update to change the post controls from a navigation region to a toolbar region, this is more semantically accurate and allows the landmark region list to focus on posts.
-
I’ve also improved labeling on the post controls while I was at it
So we’re going from a rather sparse landmark element list within topics
To something that more clearly represents the topic structure
This update should land at some point this week. I’ll be curious to hear some feedback about these changes once they’re available @adress!