A11y: Fix overview group names, expandable nav item type, duplicate popup announcement, and Semantic ComboBox result count#616
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR improves screen-reader accessibility across AI Dev Gallery by enhancing UI Automation metadata and Narrator announcements so grouped content, expandable navigation items, and search-like controls convey clearer context to users.
Changes:
- Adds heading levels and automation names for grouped overview sections (Scenarios/APIs) so Narrator announces section names appropriately.
- Enhances accessible naming for expandable
NavigationViewItemcategory groups by appending their localized control type. - Removes the performance-details flyout in favor of tooltip +
AutomationProperties.FullDescriptionto avoid duplicate “popup” announcements, and adds a Semantic ComboBox result-count announcement.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| AIDevGallery/Samples/SharedCode/Controls/SemanticComboBox.cs | Announces semantic suggestion result counts and guards against stale async results. |
| AIDevGallery/Pages/Scenarios/ScenarioSelectionPage.xaml.cs | Applies control-type suffixing to scenario category navigation items for clearer SR output. |
| AIDevGallery/Pages/Scenarios/ScenarioOverviewPage.xaml | Adds heading level + automation naming to grouped scenario overview sections. |
| AIDevGallery/Pages/APIs/APISelectionPage.xaml.cs | Applies control-type suffixing to API category navigation items (and adds helper import). |
| AIDevGallery/Pages/APIs/APIOverview.xaml | Adds heading level and automation name to improve SR navigation/announcement. |
| AIDevGallery/Helpers/NavigationViewItemHelper.cs | Introduces AppendControlTypeToName helper for localized control-type accessible naming. |
| AIDevGallery/Controls/SampleContainer.xaml.cs | Switches performance-details content exposure to tooltip + FullDescription (no flyout). |
| AIDevGallery/Controls/SampleContainer.xaml | Updates the performance-details button’s automation properties and removes the flyout content. |
wang563681252
approved these changes
Jul 6, 2026
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.
Accessibility fixes for AI Dev Gallery. Each commit is a standalone fix and can be reviewed independently.
Fixes
ItemsViewon the Scenario/API overview pages now exposes anAutomationProperties.Name, and group titles useHeadingLevel, so Narrator announces each section.NavigationViewItems (Scenarios / APIs) append their real control type to the accessible name so Narrator conveys they are expandable groups.Flyout; its content is exposed via tooltip +AutomationProperties.FullDescription, so Narrator no longer announces "popup window" twice.NarratorHelper.Announce, matching the app's main search box.