Skip to content
Snippets Groups Projects
Verified Commit 74b6ceda authored by Alex Pott's avatar Alex Pott
Browse files

Issue #2998857 by Luke.Leber, e.chatrer, afem, bskibinski, mgifford: a11y:...

Issue #2998857 by Luke.Leber, e.chatrer, afem, bskibinski, mgifford: a11y: Input type file fields lack aria-describedby to the description
parent e015f808
No related branches found
No related tags found
26 merge requests!12227Issue #3181946 by jonmcl, mglaman,!11131[10.4.x-only-DO-NOT-MERGE]: Issue ##2842525 Ajax attached to Views exposed filter form does not trigger callbacks,!9470[10.3.x-only-DO-NOT-MERGE]: #3331771 Fix file_get_contents(): Passing null to parameter,!8736Update the Documention As per the Function uses.,!8528Issue #3456871 by Tim Bozeman: Support NULL services,!8513Issue #3453786: DefaultSelection should document why values for target_bundles NULL and [] behave as they do,!5423Draft: Resolve #3329907 "Test2",!3878Removed unused condition head title for views,!3818Issue #2140179: $entity->original gets stale between updates,!3742Issue #3328429: Create item list field formatter for displaying ordered and unordered lists,!3731Claro: role=button on status report items,!3651Issue #3347736: Create new SDC component for Olivero (header-search),!3478Issue #3337882: Deleted menus are not removed from content type config,!3355Issue #3209129: Scrolling problems when adding a block via layout builder,!3154Fixes #2987987 - CSRF token validation broken on routes with optional parameters.,!3133core/modules/system/css/components/hidden.module.css,!2964Issue #2865710 : Dependencies from only one instance of a widget are used in display modes,!2812Issue #3312049: [Followup] Fix Drupal.Commenting.FunctionComment.MissingReturnType returns for NULL,!2378Issue #2875033: Optimize joins and table selection in SQL entity query implementation,!2062Issue #3246454: Add weekly granularity to views date sort,!10223132456: Fix issue where views instances are emptied before an ajax request is complete,!877Issue #2708101: Default value for link text is not saved,!617Issue #3043725: Provide a Entity Handler for user cancelation,!579Issue #2230909: Simple decimals fail to pass validation,!560Move callback classRemove outside of the loop,!555Issue #3202493
Pipeline #220659 passed
Pipeline: drupal

#220663

    ......@@ -320,6 +320,11 @@ public static function processManagedFile(&$element, FormStateInterface $form_st
    '#weight' => -10,
    '#error_no_message' => TRUE,
    ];
    if (!empty($element['#description'])) {
    $element['upload']['#attributes']['aria-describedby'] = $element['#id'] . '--description';
    }
    if (!empty($element['#accept'])) {
    $element['upload']['#attributes'] = ['accept' => $element['#accept']];
    }
    ......
    ......@@ -41,6 +41,7 @@ public function buildForm(array $form, FormStateInterface $form_state, $tree = T
    $form['nested']['file'] = [
    '#type' => 'managed_file',
    '#title' => $this->t('Managed <em>@type</em>', ['@type' => 'file & butter']),
    '#description' => $this->t('Upload a <em>@type</em> file', ['@type' => 'file & butter']),
    '#upload_location' => 'public://test',
    '#progress_message' => $this->t('Processing...'),
    '#extended' => (bool) $extended,
    ......
    ......@@ -4,6 +4,7 @@
    namespace Drupal\Tests\file\Functional;
    use Drupal\Component\Utility\Html;
    use Drupal\file\Entity\File;
    /**
    ......@@ -40,8 +41,14 @@ public function testManagedFile(): void {
    $input_base_name = $tree ? 'nested_file' : 'file';
    $file_field_name = $multiple ? 'files[' . $input_base_name . '][]' : 'files[' . $input_base_name . ']';
    // Submit without a file.
    $this->drupalGet($path);
    // Ensure the aria-describedby relationship works as expected.
    $input_id = Html::getId('edit_' . $input_base_name);
    $this->assertSession()->elementExists('css', '#' . $input_id . '--description');
    $this->assertSession()->elementExists('css', '[aria-describedby="' . $input_id . '--description"]');
    // Submit without a file.
    $this->submitForm([], 'Save');
    $this->assertSession()->pageTextContains("The file ids are .");
    ......
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Please register or to comment