Skip to content

Restore UI Automation support for custom accessible controls - #11875

Draft
davkean wants to merge 1 commit into
dotnet:mainfrom
davkean:dev/davkean/fix-uia-iaaccessibleex
Draft

Restore UI Automation support for custom accessible controls#11875
davkean wants to merge 1 commit into
dotnet:mainfrom
davkean:dev/davkean/fix-uia-iaaccessibleex

Conversation

@davkean

@davkean davkean commented Aug 28, 2026

Copy link
Copy Markdown
Member

System.Windows.Automation clients replace Windows' MSAA proxy with a legacy managed provider that ignores richer patterns and properties exposed through IAccessibleEx. Custom controls therefore lose pattern support, set-position metadata, and pattern state notifications that native UI Automation clients receive.

This change honors server-provided patterns and properties before legacy MSAA inference, bridges ExpandCollapse and Toggle state events, preserves existing fallbacks for unsupported members, and provides valid Tree selection contracts.

Microsoft Reviewers: Open in CodeFlow

@dotnet-policy-service dotnet-policy-service Bot added the PR metadata: Label to tag PRs, to facilitate with triage label Aug 28, 2026
System.Windows.Automation replaces the Windows MSAA proxy with its own client-side provider. That provider ignores richer patterns, properties, and property-change events exposed through IAccessibleEx.

Compose server support before legacy inference, preserve existing fallbacks, and bridge ExpandCollapse and Toggle state events. Retain valid Tree selection contracts.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@davkean
davkean force-pushed the dev/davkean/fix-uia-iaaccessibleex branch from 08ac65f to 4d410b5 Compare August 29, 2026 04:37
@davkean davkean changed the title Restore UI Automation patterns for custom tree controls Restore UI Automation support for custom accessible controls Aug 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR metadata: Label to tag PRs, to facilitate with triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant