microsoft / microsoft-ui-xaml

Windows UI Library: the latest Windows 10 native controls and Fluent styles for your applications
MIT License
6.28k stars 675 forks source link

TextBlocks are not read by screen readers when they are used in a XAML Islands app #4399

Open carlos-zamora opened 3 years ago

carlos-zamora commented 3 years ago

Describe the bug

TextBlocks are not read by Narrator and NVDA when they are used in a XAML Islands app.

Steps to reproduce the bug Verified this behavior in the following places:

I have also tried adding a hyperlink to the text blocks, and the behavior slightly changed: Narrator NVDA
Normal Reads hyperlink, but not surrounding text. Reads text block and hyperlinked portion.
Xaml Islands Silence. Silence.

If you enter scan mode, you are able to navigate around the text (hyperlinked and not).

Expected behavior

At a minimum, XAML Islands should have the same behavior as a non-xaml islands app.

Ideally, for hyperlinks, all screen readers would behave like NVDA. That said, that might be an issue that's on screen readers, not XAML.

The real issue here is that these text blocks are not read automatically. It seems like they're being exposed, and we're just not notifying the screen reader that we've navigated to a portion of the screen that has a text block.

Version Info NuGet package version: [Microsoft.UI.Xaml 2.5.0]

Windows app type: UWP Win32
Windows 10 version Saw the problem?
Insider Build (xxxxx)
October 2020 Update (19042)
May 2020 Update (19041)
November 2019 Update (18363)
May 2019 Update (18362)
October 2018 Update (17763)
April 2018 Update (17134)
Fall Creators Update (16299)
Creators Update (15063)
Device form factor Saw the problem?
Desktop
Xbox
Surface Hub
IoT

Additional context Surprisingly, I've done a bit of testing with ContentDialogs too (see #2681). For NVDA, the text blocks are actually ready when the Content Dialog opens (except for the title). This further makes me think that the issue isn't that the automation properties aren't being exposed, but rather we need to notify the screen reader for when to read the text block.

StephenLPeters commented 3 years ago

@JesseCol or @Austin-Lamb can you weigh in?

github-actions[bot] commented 1 year ago

This issue is stale because it has been open 180 days with no activity. Remove stale label or comment or this will be closed in 5 days.

DHowett commented 1 year ago

Oop, this one seems big-time important.