Skip to content

a11y: Android variants of the three accessibility-node sample items - #1045

Open
gmurray81 wants to merge 6 commits into
mainfrom
gmurray/chart-accessibility-android-samples
Open

gmurray81 wants to merge 6 commits into
mainfrom
gmurray/chart-accessibility-android-samples

Conversation

@gmurray81

Copy link
Copy Markdown
Member

These three existed only as GTK.cs and Web.ts, so every scenario that binds one failed on Android with "library does not have item" -- four of the chart accessibility scenarios, and they would block WinUI, WPF and iOS the same way whenever those run them.

The AddAction one differs from its siblings on purpose. The other platforms guard with "if actions == null" and then add through the property; on Android the wrapper's getter lazily builds a collection that reads from the implementation but carries no sync target, so the guard never fires and items added through that collection never reach the implementation. Assigning the collection first is what wires the write-through, so this assigns and then adds.

gmurray81 and others added 2 commits September 21, 2026 23:08
These three existed only as GTK.cs and Web.ts, so every scenario that
binds one failed on Android with "library does not have item" -- four of
the chart accessibility scenarios, and they would block WinUI, WPF and
iOS the same way whenever those run them.

The AddAction one differs from its siblings on purpose. The other
platforms guard with "if actions == null" and then add through the
property; on Android the wrapper's getter lazily builds a collection
that reads from the implementation but carries no sync target, so the
guard never fires and items added through that collection never reach
the implementation. Assigning the collection first is what wires the
write-through, so this assigns and then adds.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: gmurray81 <4264873+gmurray81@users.noreply.github.com>
gmurray81 and others added 3 commits September 26, 2026 08:30
The rename of AccessibilityNode.Description to DescriptionText landed in
dev-tools, which cannot reach this repo: six handlers here still assigned
the old property. These items compile into each platform's emitted sample
library, so this broke the library build on GTK, Web and Android rather
than just failing a test.

The three items also shipped only GTK.cs, Web.ts and Android.kt, so
WindowsForms, WPF, WinUI and Uno got no samples at all and every scenario
binding one failed with "library does not have item". Desktop.cs is the
shared desktop variant -- it covers WPF, WindowsForms, GTK, WinUI and Uno
-- so one file per item closes all four.

Verified through the emitter and the suites: GTK and Android build and
run green with these; WindowsForms now emits all three items.

Still missing: Swift, .NET iOS and .NET Android have no variant for these
items, so those lanes will fail the scenarios that bind them.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This reverts 21922c9. Filtering TestsAccessibility* out of the emission
was a hold-the-line measure while those items were not building; they are
in main now and the handlers have been corrected for the DescriptionText
rename, so the emitter can carry them again.

tooling: 17 tests, 17 pass with the filter gone.

Co-Authored-By: Claude Opus 5 <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.

2 participants