[4.0] [WIP] Basic attributes for a tree structure in media manager#24038
[4.0] [WIP] Basic attributes for a tree structure in media manager#24038wilsonge merged 1 commit intojoomla:4.0-devfrom
Conversation
f233ef0 to
03181b8
Compare
<div class="media-disk-name">Local</div>This should be a headline, e.g. <ul class="media-tree" aria-labelledby="TreeViewPurposeID" ....>Is this a sufficient explanation for you? |
03181b8 to
393c013
Compare
|
OK So @laoneo @dneukirchen I need some advice here. Unfortunately to make the tree work for the a11y requirements I need the drive to be part of the element list I think else things don't work. Is there any reason the drives can't be part of the list or in non-local adapters is there going to be cases where this is a bad idea? |
|
@laoneo @dneukirchen bump |
What do you mean with that? |
|
I am assuming that @wilsonge is referring to media-disk-name They are currently disconnected from the list media-tree |
I mean the media drive names (currently in the class |
|
I guess this needs some restructuring and some changes in tree and tree-item components, but i dont see a case where this should be a problem. |
|
Perfect. Thanks |
27bfa47 to
dc497b9
Compare
|
OK So I've fixed the html structure. The tabindex stuff is implemented to the point of the active page item gets a tabindex of 0 and the rest -1. As I said I'm going to leave the keyboard navigation for someone else to take a stab at. @dneukirchen can you take a look as well to ensure the cloud plugins are still happy here |
dc497b9 to
eac3fee
Compare
|
tested successfully. html looks like screenshot: |
|
Looks like you have a lot of unnecessary aria attributes in there. I will check more closely later but you shouldnt need aria-setsize and aria-posint
|
|
https://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-1/treeview-1b.html I deliberately put them in because of the above link which says
|
|
Are you overriding the " browser computation of values for these properties." |
|
https://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-1/treeview-1a.html
And i've struggled to find docs on what browsers do/don't support this. so seemed better safe than sorry But no I'm not overriding anything |
No problem I guess - @zwiastunsw will know better than me |
|
Unfortunately, I don't know any better. |
|
Its a bit old but reading through the post and examples it seems more up to date that the example you followed http://accessibleculture.org/articles/2013/02/not-so-simple-aria-tree-views-and-screen-readers/ I checked http://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-1/treeview-1a.html which does not use posinset etc and it works correctly in FF, Edge, Chrome on windows The only reason that it might not work would be in a scenario where the entire tree is not in the dom at page load but was added dynamically on an event. That is not the case here. |
Only after the holidays will I receive an answer. |
eac3fee to
ea8e928
Compare
|
@zwiastunsw Any updates from your contact. If we don't hear anything soon then I'd rather merge this in. I can start some work on the keyboard support and then we can easily come back and delete these extra attributes at a later point |
|
Merging per above. More than happy to come back to this if/when we hear something back |
|



This is a PR working on trying to implement at a basic level a tree view hierachy for the media manager to improve a11y as part of the issues raised in joomla/accessibility#58
It also fixes the tree structure which was left broken after adding RTL support (note I have tested this PR in persian and it seems ok to me - it's not totally pixel perfect but more than usable)
https://www.w3.org/TR/wai-aria-practices/examples/treeview/treeview-1/treeview-1b.html
What is in the scope of this
This is not trying to implement keyboard support buttons - just add the required attributes - I deliberately want to leave that for someone else to do so they can get a feel of how Vue.JS works based on the keyboard navigation I did here 544c9c6