Repository navigation
Do not set role="figure" on unlabelled Adaptive Cards, and show a pointer on clickable elements - #5915
Merged
Conversation
Collaborator
Author
|
TODO: show announced activities by applying styles to live region and taking snapshot |
Eugene (OEvgeny)
force-pushed
the
OEvgeny/fix-ac-selectable-figure
branch
from
October 20, 2026 02:22
3a1e404 to
8ef98c4
Compare
Eugene (OEvgeny)
marked this pull request as ready for review
October 20, 2026 18:10
Eugene (OEvgeny)
requested review from
William Wong (compulim),
Chris Whitten (cwhitten) and
TJ Durnford (tdurnford)
as code owners
October 20, 2026 18:10
Eugene (OEvgeny)
force-pushed
the
OEvgeny/fix-ac-selectable-figure
branch
2 times, most recently
from
October 20, 2026 20:24
65ed889 to
41dd9f4
Compare
added 5 commits
October 20, 2026 13:55
A card without "speak" has no name, and an unnamed "figure" or "form" is announced without its content. Set the role only when the card has a label, fixes #5049.
Containers and images with "selectAction" get cursor: pointer; push buttons keep the default cursor, fixes #5130.
Both cards had speak 'Hello, World!', so the live region snapshot read the same line twice.
Eugene (OEvgeny)
force-pushed
the
OEvgeny/fix-ac-selectable-figure
branch
from
October 20, 2026 20:57
41dd9f4 to
ab1ba1e
Compare
William Wong (compulim)
previously approved these changes
Oct 20, 2026
…on main #5900 removed the capture-phase click listener from the card root, so Chrome now leaves the role-less card out of the accessibility tree (role "none") instead of exposing it as "generic". Assert that neither card is a "figure" or a "form" instead. The live region now reads the text of cards without "speak" (#5922), update the snapshot.
Eugene (OEvgeny)
dismissed
William Wong (compulim)’s stale review
via
October 21, 2026 03:10
4e48c5d
William Wong (compulim)
approved these changes
Oct 21, 2026
This was referenced Oct 22, 2026
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changelog Entry
Fixed
Description
Adaptive Cards without
speakgot an unnamedrole="figure", and elements withselectActionhad no pointer cursor. Cards now getfigureorformonly with a label, and clickable containers and images show a pointer cursor.Design
Specific Changes
useRoleModEffect.ts: norolewhen the card has no labelAdaptiveCardRenderer.module.css:cursor: pointeron.ac-selectableexcept push buttonshack.roleMod.unlabelled.html: 2 cards without a label are neither "figure" nor "form"; snap 1: live region reads "A card:" with each card's texthack.roleMod.html: snap 1: live region reads each card'sspeakI have added tests and executed them locally
I have added
.changelog/<PR#>-<slug>.mdI have updated documentation
Review Checklist
z-index)package.jsonandpackage-lock.jsonreviewed