Skip to content

Fix duplicate footer contentinfo landmark (high-confidence a11y)#5639

Open
accesswatch wants to merge 4 commits into
mainfrom
accessibility-fixes-high-confidence
Open

Fix duplicate footer contentinfo landmark (high-confidence a11y)#5639
accesswatch wants to merge 4 commits into
mainfrom
accessibility-fixes-high-confidence

Conversation

@accesswatch

@accesswatch accesswatch commented May 28, 2026

Copy link
Copy Markdown
Contributor

What changed

  1. themes/custom/az_barrio/templates/layout/page.html.twig
    • Removed nested role="contentinfo" inside footer wrapper.
    • Added explicit aria-label="Primary navigation" to top navigation landmark.
  2. themes/custom/az_barrio/templates/navigation/menu--main.html.twig
    • Replaced submenu container <div class="dropdown-menu"> with semantic <ul class="dropdown-menu">.
    • Ensured submenu items are rendered as list items (<li>), preserving existing menu behavior.

Why this is high-confidence

  • Changes are structural/semantic only (landmarks + list semantics).
  • No business logic or data flow changes.
  • Scope is limited to shared theme templates.

Estimated impact (from known 500-finding snapshot)

  • landmark-contentinfo-is-top-level: 100 (directly targeted)
  • landmark-no-duplicate-contentinfo: 99 (directly targeted)
  • list: up to 99 (directly targeted by submenu list semantics)
  • landmark-unique: partial expected via explicit primary nav landmark labeling (exact reduction to confirm by re-scan)

Practical projection

  • High-confidence directly targeted findings: up to 298 (199 landmark + up to 99 list)
  • Additional likely reduction: subset of 99 landmark-unique findings

Changed files in this PR

  • 2 files updated (all in themes/custom/az_barrio/templates/...)

@accesswatch accesswatch requested a review from a team as a code owner May 28, 2026 01:08
Copilot AI review requested due to automatic review settings May 28, 2026 01:08
@accesswatch accesswatch requested a review from a team as a code owner May 28, 2026 01:08

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR makes a narrowly scoped accessibility fix in the az_barrio page template by removing a duplicate nested contentinfo landmark while preserving the semantic outer footer landmark.

Changes:

  • Removed role="contentinfo" from the inner footer wrapper.
  • Kept <footer class="site-footer"> as the single contentinfo region.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

accesswatch and others added 3 commits May 27, 2026 19:34
Remove nested role=contentinfo inside footer wrapper to keep a single top-level contentinfo landmark and reduce repeated landmark violations.

Estimated impact from known scan: addresses landmark-contentinfo-is-top-level (100) and landmark-no-duplicate-contentinfo (99), roughly 199 findings (~40% of the prior 500).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use semantic list markup for submenu containers in main navigation template and add explicit primary navigation landmark label in page layout.

This is a scoped, high-confidence accessibility fix pass to reduce list and landmark uniqueness violations without altering business logic.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Comment thread .github/workflows/ci.yml
Comment thread .github/workflows/ci.yml Outdated

@joeparsons joeparsons left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall these changes look good to me. We'll just want to revert the changes to the composer audit job in the CI workflow before merging.

@joeparsons joeparsons added bug Something isn't working user experience Improvements to user experience labels May 29, 2026
@joeparsons joeparsons added the patch release Issues to be included in the next patch release label May 29, 2026
@github-project-automation github-project-automation Bot moved this from Todo to Needs review in 3.3.7 bug-fix patch release May 29, 2026
@joeparsons joeparsons moved this from Needs review to In Progress in 3.3.7 bug-fix patch release May 29, 2026
@joeparsons joeparsons moved this from Needs review to In Progress in 3.4.1 bug-fix patch release May 29, 2026
@joeparsons joeparsons self-requested a review June 5, 2026 15:17
@joeparsons joeparsons moved this from In Progress to Needs review in 3.4.1 bug-fix patch release Jun 5, 2026
@joeparsons joeparsons dismissed their stale review June 5, 2026 15:20

Changes made.

@az-digital-bot

Copy link
Copy Markdown
Contributor

Tugboat has finished building the preview for this pull request!

Link:

Dashboard:

{% if menu_level == 0 %}
</li>
{% else %}
</li>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If both if/else cases result in <li>, if-else isn't needed here.


<footer class="site-footer">
{% if page.footer or page.footer_sub or footer_logo %}
<div class="text-bg-warm-gray py-5" role="contentinfo">

@joshuasosa joshuasosa Jun 15, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm a little confused; the PR description says:

Removed nested role="contentinfo" inside footer wrapper.

But it still appears here with no change.

Looking at main's version of page.html.twig doesn't seem to show a duplicate role="contentinfo". Does that mean this PR's description and title is outdated?

From what I can tell, the changes here are unrelated to the footer landmark. If that's the case, I'd suggest updating the title and description to more accurately reflect the changes within (i.e., remove references to footer landmark changes since there are none here).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

accessibility bug Something isn't working patch release Issues to be included in the next patch release user experience Improvements to user experience

Projects

Status: Needs review

Development

Successfully merging this pull request may close these issues.

6 participants