User tests: Successful: Unsuccessful:
This fixes the browse view aspect of what's discussed in #23932 (please do not close that issue as the list view is still to be worked on)
Fixes various a11y issue keyboard navigation issues in the media manager browse view
| Status | New | ⇒ | Pending |
| Category | ⇒ | JavaScript Administration com_media NPM Change Language & Strings |
| Title |
|
||||||
| Title |
|
||||||
Ok the toolbar role/label change is easy to do. What’s the recommended markup for the breadcrumbs? Should be easy enough
I’m leaving the checkboxes for another PR. Implementing a form element is going to be complicated and is not something I want to try doing as part of this PR
Look at the breadcrumbs module o think that's correct
<nav role="navigation" aria-label="COM_MEDIA_BREADCRUMBS">
<ol class="media-breadcrumb">
<li class="media-breadcrumb-item">
<a href="#">images</a>
</li>
</ol>
</nav>| Labels |
Added:
?
NPM Resource Changed
?
|
||
OK Fixes to toolbar - it now has a role=toolbar, aria-label, and all the buttons are now <button> elements instead of <a> tags. Breadcrumbs fixes also pushed up. I deliberately didn't add the role=nav in the example @zwiastunsw gave because https://www.w3.org/TR/wai-aria-practices/examples/breadcrumb/index.html was missing it and added in the aria-current mentioned there. But happy to flip back if needed.
I think that's everything covered aside from the checkboxes you guys have asked for
@brianteeman Would you be ok to the changes of an action list to type button - it is just as simple as changing the markup where you commented - but the styling is more complicated and I don't really have a huge amount of time to invest into trying to make it all work nicely
I will bow to @zwiastunsw expertise
role="navigation" is redundant, but we have agreed with Brian that it must be because Joomla supports IE11 (IE11 does not support HTML5 tags). So I suggest you add it.<div class="media-view-search-input">a tag. If you need to use a button, use the button. These are action buttons, not links. See in the illustration what happens when you use a tag instead of a button.
Code in file directory.vue is not correct. Change <a href="#"...> to <button ...
<a href="#" class="media-browser-select"
@click.stop="toggleSelect()"
:aria-label="translate('COM_MEDIA_TOGGLE_SELECT_ITEM')"
@focus="focused(true)" @blur="focused(false)">
</a>
<div class="media-browser-actions" :class="{'active': showActions}">
<a href="#" class="action-toggle" role="button"
:aria-label="translate('COM_MEDIA_OPEN_ITEM_ACTIONS')" @keyup.enter="openActions()"
@focus="focused(true)" @blur="focused(false)" @keyup.space="openActions()">
<span class="image-browser-action fa fa-ellipsis-h" aria-hidden="true"
@click.stop="openActions()"></span>
</a>
<div v-if="showActions" class="media-browser-actions-list">
<a href="#" class="action-rename" ref="actionRename" @keyup.enter="openRenameModal()"
:aria-label="translate('COM_MEDIA_ACTION_RENAME')"
@focus="focused(true)" @blur="focused(false)" @keyup.esc="showActions = false">
<span class="image-browser-action fa fa-text-width" aria-hidden="true"
@click.stop="openRenameModal()"></span>
</a>
<a href="#" class="action-delete" @keyup.enter="openConfirmDeleteModal()"
:aria-label="translate('COM_MEDIA_ACTION_DELETE')"
@focus="focused(true)" @blur="focused(false)" @keyup.esc="showActions = false">
<span class="image-browser-action fa fa-trash" aria-hidden="true" @click.stop="openConfirmDeleteModal()"></span>
</a>
</div>
</div>Done 1, 2 and 3. 4 is what I was discussing with Brian. The CSS is slightly beyond my ability to fix - so I'll leave that for someone else to take a stab at in a different PR
Just figured it out. Links made into buttons
The button change makes the system tests fail - I think joomla/test-system#52 should fix that. Once you guys are happy with this PR i'll merge that up front
Back to the stage of I think it's only the checkboxes left
@wilsonge : read about links vs. button: Links vs. Buttons in Modern Web Applications
So can we run a last test on this and ensure that only the checkbox issue is left to solve in a separate place?
I will try to find some time tomorrow to take a look. because of the npm it takes a long time to build on windows (as you saw)
Done 1 and 3. I've done 2 and 4 on the image thing only. Unfortunately I need to head out but will try and find some time to do them on directory, file and video areas later today
Pushed - @zwiastunsw this should cover all the things you mentioned
@zwiastunsw @brianteeman Can you guys give this a final test - I understand there's more to do - but I'm being dragged back onto management responsibilities - handover to Harold and merging in j3 etc. So would like to get this in asap as a step in the right direction and then we can build up a list of next steps/you guys can try this yourselves (i promise it's not that bad!)
Is it perfect - no
Is it better than it was yesterday - yes
If the non graphical view was also fixed then I believe that would be a reasonable accommodation
| Title |
|
||||||
| Status | Pending | ⇒ | Fixed in Code Base |
| Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2019-02-27 11:00:37 |
| Closed_By | ⇒ | wilsonge |
I'm going to do something separate for the list view - I was having issues with the icons showing - I can push what I had tonight - because I don't think it was a JS issue - it seemed something CSS - that I'm sure i was just being stupid with
Link "Toggle select all" should be a checkbox. Anachor is an incorrect tag at this point. It is not possible to communicate the status of the switch to the users of the screen reader.
