Skip to content

Read Adaptive Card text in the live region as the card shows it - #5929

Merged
Eugene (OEvgeny) merged 14 commits into
mainfrom
OEvgeny/fix-liveregion-card-text-format
Oct 21, 2026
Merged

Eugene (OEvgeny) merged 14 commits into
mainfrom
OEvgeny/fix-liveregion-card-text-format

Conversation

@OEvgeny

@OEvgeny Eugene (OEvgeny) commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

The live region reads Adaptive Card text with its Markdown and {{DATE()}} syntax, such as "**sunny**", instead of the text the card shows.

Changelog Entry

Fixed

  • Fixed screen readers reading Adaptive Card text with its Markdown and {{DATE()}} syntax, in PR #5929, by @OEvgeny

Description

Since #5922 the live region reads the raw card text, so screen readers say asterisks, link URLs, and {{DATE(...)}}. Text blocks, rich text blocks, and facts are now rendered with the visible card's Markdown engine and read with htmlTextAlternatives(), as message text is.

Design

  • Renders with Adaptive Cards ({{DATE()}}/{{TIME()}}, then Markdown) instead of stripping Markdown, so the live region reads what the card shows.

Specific Changes

  • activityAltText.ts: htmlTextAlternatives() takes any node, exported through internal.js

  • setMarkdownEngine.ts: moved out of renderAdaptiveCard.ts for reuse

  • AdaptiveCardAttachment.js: reads the rendered text (raw text if rendering throws)

  • adaptiveCard.markdown.html: snapshot 1, reads the card text without Markdown syntax

  • adaptiveCard.dateTime.html: snapshot 1, reads the date and time as the card shows them

  • adaptiveCard.imageAndBlocks.html: snapshot 1, reads image alt text and separates HTML blocks

  • CHANGELOG.md: entry

  • I have added tests and executed them locally

  • I have added .changelog/<PR#>-<slug>.md

  • I have updated documentation

Review Checklist

This section is for contributors to review your work.

  • Accessibility reviewed (tab order, content readability, alt text, color contrast)
  • Browser and platform compatibilities reviewed
  • CSS styles reviewed (minimal rules, no z-index)
  • Documents reviewed (docs, samples, live demo)
  • Internationalization reviewed (strings, unit formatting)
  • package.json and package-lock.json reviewed
  • Security reviewed (no data URIs, check for nonce leak)
  • Tests reviewed (coverage, legitimacy)

@OEvgeny
Eugene (OEvgeny) marked this pull request as ready for review October 20, 2026 17:59
Copilot AI balanced review requested due to automatic review settings October 20, 2026 17:59

Copilot AI left a comment

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.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@OEvgeny
Eugene (OEvgeny) force-pushed the OEvgeny/fix-liveregion-card-text-format branch from 9d2b684 to f922810 Compare October 20, 2026 20:24
@OEvgeny
Eugene (OEvgeny) enabled auto-merge (squash) October 20, 2026 23:23
@OEvgeny
Eugene (OEvgeny) merged commit 1362d87 into main Oct 21, 2026
33 checks passed
@OEvgeny
Eugene (OEvgeny) deleted the OEvgeny/fix-liveregion-card-text-format branch October 21, 2026 01:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants