microsoft / microsoft/AdaptiveCards
[Teams][Accessibility] [TextRun element focusable on Android while all other elements are not]
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 2k
- Forks
- 595
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 1
Description
Platform
What platform is your issue or question related to? (Delete other platforms).
- .NET HTML
- .NET WPF
- Android
- iOS
- JavaScript
- UWP
Author or host
Are you an author (like sending something to Outlook), or a host that is rendering your own cards? If host, please specify the corresponding host (app) name.
Host - Teams Mobile
If you're an author, who are you sending cards to?
Version of SDK
What version are you using? Ex: NuGet 1.0.2, or latest main, etc...
1.2
Details
Explain your issue. If you just have a question, please post on StackOverflow instead.
Using TextRun elements is causing accessibility focus issues on Android. See attached video and card JSON. It seems that for all other adaptive card elements, like TextBlock, they are set to fosuable: false, however, for some reason the TextRun elements is rendering with fosuable; true. This causes very unexpected results when used alignside other TextBlock elements. When the focus is on the whole card, it skips reading the TextRun elements. When swiping to next element, it then jumps only to the TextRun element, causing a very confusing user experience. See video for example, where "16 hours" is rendered using TextRun.
Currently we are recommending from Teams to not use TextRun next to TextBlock because of this accessibility issue. So while developers can work around this by using other types of elements, they will not be able to leverage the features of TextRun.
This does not repro on iOS or Web
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the attached video and originalCardJson.txt, then reproduce the issue in the Android Teams Mobile host using the TextRun and TextBlock elements described. Trace Android rendering and accessibility focus for TextRun; done means TextRun no longer receives unexpected focus or gets skipped in the card's reading order, without regressing other elements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android
- Domain
- accessibility, mobile
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100