Button accessible name does not convey its function: missing topic context (Settings dialog > Topics dialog > buttons Following/Unfollow/Blocked/Unblock)
Categories
(Firefox :: New Tab Page, defect)
Tracking
()
People
(Reporter: john.northup, Assigned: koladeelizabeth01, Mentored)
References
(Blocks 1 open bug)
Details
(Keywords: access, good-first-bug, Whiteboard: [outreachy-sidebar-2026])
Attachments
(2 files, 2 obsolete files)
Steps to Reproduce
Open DevTools. Activate the Customize button. Within the Settings dialog, activate the Manage topics button. The Topics dialog opens. Using the Accessibility Inspector, inspect the buttons adjacent to the topic names.
Expected Behavior
name conveys button function completely.
Actual Behavior
name conveys button text, but not the related topic.
User Impact
Multiple Following and Blocked buttons have identical accessible names and are not programmatically associated with the topics they act upon. As a result, AT users cannot easily determine which topic each button refers to.
WCAG 2.2 References
Recommendations
The segments of text to the left of the buttons are <label> elements whose for attributes match the id attributes of the corresponding <moz-button> elements that contain the buttons—however, the labels are not announced, likely because <moz-button> has no semantic role and is not labelable. Remove the <label> structure and instead use aria-label to give each <button> a distinct, descriptive accessible name (e.g., aria-label="unfollow movies").
Testing Environment
Any
Assistive Technology Used
Any
Code Pointers
<moz-button type="default" index="1" section="arts" id="follow-topic-arts" data-l10n-attrs="label,tooltiptext" size="default" iconposition="start" menuid="">
<link rel="stylesheet" href="chrome://global/content/elements/moz-button.css">
<button id="main-button">
<span part="button" class=" button-background " type="default" size="default">
<label is="moz-label" part="moz-button-label">
<slot></slot>
</label>
</span>
</button>
<link rel="stylesheet" href="chrome://global/content/elements/moz-label.css">
<span class="section-button-follow-text" data-l10n-id="newtab-section-follow-button">Follow</span>
<span class="section-button-following-text" data-l10n-id="newtab-section-following-button">Following</span>
<span class="section-button-unfollow-text" data-l10n-id="newtab-section-unfollow-button">Unfollow</span>
</moz-button>
Further Reference
| Reporter | ||
Comment 1•4 months ago
|
||
Updated•4 months ago
|
Comment 2•4 months ago
|
||
Managed to reproduce this issue on macOs 13 using Nightly 149.0a1. I will set this request as "NEW" to allow the engineering team to consider whether they will implement the fix or not, even thought to me it seems to have the same root cause as bug 2008117.
Comment 3•4 months ago
•
|
||
The context of controls is missing.
Alternative resolution may be using aria-labelledby on the (shadow DOM) <button> element that would refer to both the id of its <label> and the text element that includes the topic's name.
Thus, it's expected to get aria-labelledby="buttonID headingID" or, since it involves shadow DOM and these id references may not be calculated, an aria-label="button-label-string heading-text-string" could be used as a backup.
Updated•4 months ago
|
Comment 4•3 months ago
|
||
Assigning the Severity value to align with the Accessibility severity, per discussions with :thecount and :marco
Updated•3 months ago
|
Comment 6•2 months ago
|
||
Sure
| Assignee | ||
Comment 10•1 month ago
|
||
Updated•1 month ago
|
Updated•1 month ago
|
Updated•1 month ago
|
Updated•1 month ago
|
| Assignee | ||
Comment 11•1 month ago
|
||
Hi, why did you give up on me working on this bug?
Canyou assign another to me ? the one where I would not be assigned as a reviewer?
Comment 12•1 month ago
|
||
You are still assigned to this bug.. I requested feedback: https://phabricator.services.mozilla.com/D292753, so you'll need to make further changes.
Updated•1 month ago
|
Updated•1 month ago
|
Comment 13•1 month ago
|
||
Comment 14•1 month ago
|
||
| bugherder | ||
Updated•1 month ago
|
Description
•