dotnet / dotnet/maui

Look at making accessibility properties a NOOP for some invalid cases on iOS

Open
#10,347 1 comment 0 reactions 0 assignees View on GitHub
area-layout legacy-area-a11y platform/ios t/a11y Task
Dominant language
C#
Stars
23.3k
Forks
2k
Avg merge
1d 14h
Merged PRs (30d)
296

Description

### Description

On iOS it's not a recommended or functional approach to apply accessibility properties to layouts unless you are making a semantic control. Scenarios like applying a Semantic Description that work for `Android` and `WinUI` don't yield the same result for iOS.

It's always a tricky trying to be "too smart" with APIs but for a case like the CollectionView there isn't really a valid scenario to apply an entire description to the `UICollectionView`.

The motivation to make this a noop is primarily for users that don't test accessibility after they apply properties. Not applying this property leaves the app in a less broken state then applying the property. Both outcomes are seemingly wrong from the users perspective but applying it is completely wrong for the user.

If the developer wants to use their "better judgement" They can just apply the accessibilityLabel themselves to the underlying control or use a mapper to replace our behavior

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the Semantic Description behavior on a CollectionView backed by UICollectionView on iOS, then compare it with the Android and WinUI behavior described in the issue. Done means invalid accessibility properties become no-ops on iOS while developers can still set the underlying control's accessibilityLabel or replace the behavior with a mapper.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, ios
Domain
accessibility, mobile-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.