Issue #3087405 by andrewmacpherson, bnjmnm, phenaproxima, rainbreaw, annagaz, cboyden: For screenreader users using the media and media library UI, the words "remove" and "removed" sound too similar

(cherry picked from commit a2f5778f56)
merge-requests/64/head
Alex Pott 2019-11-29 12:53:41 +00:00
parent c23eecc894
commit 4a7d1dde4c
No known key found for this signature in database
GPG Key ID: 31905460D4A69276
2 changed files with 7 additions and 5 deletions

View File

@ -667,7 +667,9 @@ class MediaLibraryWidget extends WidgetBase implements ContainerFactoryPluginInt
// Announce the updated content to screen readers.
if ($is_remove_button) {
$announcement = t('Removed @label.', ['@label' => Media::load($field_state['removed_item_id'])->label()]);
$announcement = t('@label has been removed.', [
'@label' => Media::load($field_state['removed_item_id'])->label(),
]);
}
else {
$new_items = count(static::getNewMediaItems($element, $form_state));

View File

@ -201,7 +201,7 @@ class EntityReferenceWidgetTest extends MediaLibraryTestBase {
$button = $assert_session->buttonExists('Remove', $wrapper);
$this->assertSame('Remove Dog', $button->getAttribute('aria-label'));
$button->press();
$this->waitForText('Removed Dog.');
$this->waitForText('Dog has been removed.');
// Assert the focus is set back on the open button of the media field.
$this->assertJsCondition('jQuery("#field_twin_media-media-library-wrapper .js-media-library-open-button").is(":focus")');
@ -218,9 +218,9 @@ class EntityReferenceWidgetTest extends MediaLibraryTestBase {
$assert_session->hiddenFieldValueEquals('field_twin_media[selection][0][target_id]', 4);
$assert_session->hiddenFieldValueEquals('field_twin_media[selection][1][target_id]', 4);
$wrapper->pressButton('Remove');
$this->waitForText('Removed Dog.');
$this->waitForText('Dog has been removed.');
$wrapper->pressButton('Remove');
$this->waitForText('Removed Dog.');
$this->waitForText('Dog has been removed.');
$result = $wrapper->waitFor(10, function ($wrapper) {
/** @var \Behat\Mink\Element\NodeElement $wrapper */
return $wrapper->findButton('Remove') == NULL;
@ -302,7 +302,7 @@ class EntityReferenceWidgetTest extends MediaLibraryTestBase {
$button = $assert_session->buttonExists('Remove', $wrapper);
$this->assertSame('Remove Cat', $button->getAttribute('aria-label'));
$button->press();
$this->waitForText('Removed Cat.');
$this->waitForText('Cat has been removed.');
// Assert the focus is set to the wrapper of the other selected item.
$this->assertJsCondition('jQuery("#field_twin_media-media-library-wrapper [data-media-library-item-delta]").is(":focus")');
$assert_session->elementTextNotContains('css', '#field_twin_media-media-library-wrapper', 'Cat');