Skip to content

Accessibility#114

Open
michalpobuta wants to merge 2 commits intoRedth:mainfrom
michalpobuta:feature/accessibility
Open

Accessibility#114
michalpobuta wants to merge 2 commits intoRedth:mainfrom
michalpobuta:feature/accessibility

Conversation

@michalpobuta
Copy link
Copy Markdown
Contributor

This pull request introduces major enhancements to the DevFlow App Inspector, focusing on accessibility tooling and integration. It adds new accessibility models, exposes DevFlow agent connection info via DI, implements new Copilot tools for accessibility audits and screenshots, and updates the UI to surface accessibility features. The changes are grouped below by theme.

Accessibility Models and API Integration:

  • Added comprehensive accessibility-related models (such as DevFlowAccessibilityTree, DevFlowNativeA11yTree, AccessibilityIssue, ContrastCheckResult, and others) to DevFlowModels.cs to represent accessibility trees, audit results, and screen reader order, enabling structured accessibility analysis and reporting.
  • Extended DevFlowAgentClient with new methods for fetching accessibility data (GetAccessibilityTreeAsync, GetNativeA11yTreeAsync), and highlighting UI elements on the device, supporting advanced accessibility inspection scenarios.

Dependency Injection & Service Integration:

  • Introduced the IDevFlowConnectionProvider interface (and its implementation) to provide access to the currently connected DevFlow agent's host, port, and app name, and registered it for dependency injection in both MauiProgram.cs and MacOSMauiProgram.cs. [1] [2] [3] [4]
  • Updated CopilotToolsService to depend on IDevFlowConnectionProvider, allowing Copilot tools to query the current DevFlow connection state. [1] [2] [3]

Copilot Tools:

  • Added three new Copilot tools: get_connected_app_info, get_app_screenshot, and audit_app_accessibility, enabling Copilot to retrieve app connection info, capture screenshots, and perform full accessibility audits on the connected MAUI app. The audit tool returns a structured summary of WCAG rule violations, screen reader order, and contrast results. [1] [2]

UI Enhancements:

  • Updated the DevFlow Inspector UI to add an "Accessibility" tab, allowing users to access the new accessibility inspection features directly from the app interface. [1] [2] [3]

Model Improvements:

  • Extended DevFlowElementInfo to include effective text/background color and accessibility info, supporting richer UI and accessibility analysis.
Nagranie.z.ekranu.2026-03-14.o.13.36.57.mov

- Add Accessibility tab to DevFlow Inspector with native screen reader tree view
- Add IDevFlowConnectionProvider interface and DevFlowConnectionProvider service
- Extend DevFlowInspectorTab enum with Profiling and Accessibility tabs
- Add ValidTabs set to DevFlowInspector for tab routing validation
- Register IDevFlowConnectionProvider in both MauiProgram and MacOSMauiProgram
- Add AccessibilityAuditService for a11y audit logic
- Add DevFlowAccessibilityTab.razor component
- Extend DevFlowAgentClient with native a11y tree endpoint support
- Extend DevFlowModels with NativeScreenReaderEntry and related types

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@michalpobuta michalpobuta changed the title feat: add Accessibility tab to DevFlow Inspector Accessibility Mar 14, 2026
…er mock

CopilotToolsService constructor was extended with a required
IDevFlowConnectionProvider parameter in this PR, but the test
was not updated, causing CS7036 build failure.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.

1 participant