dotnet / dotnet/maui

[Bug] SemanticHeading limitations

Open
#3,117 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area-controls-general legacy-area-a11y platform/android s/triaged t/a11y t/bug
Dominant language
C#
Stars
23.3k
Forks
2k
Avg merge
1d 14h
Merged PRs (30d)
296

Description

Description

SemanticProperties.HeadingLevel doesn't work when applied to certain controls like SearchBar and ContentPage.ToolbarItem. While it doesn't work for SearchBar, the app crashes when applied to ToolbarItem.

Investigated only on Android

Steps to Reproduce
  1. Open .NET MAUI sln on recipes branch
  2. Set SemanticProperties.HeadingLevel on the SearchBar in StartingPage.xaml
  3. Set SemanticProperties.HeadingLevel on the ToolbarItem in MyRecipesPage.xaml
  4. Deploy app to Android physical device
  5. Turn on TalkBack
  6. Activate Headings mode if not already activated (use three finger horizontal swipe gears)
  7. Swipe up/down to navigate Headings on StartingPage - SearchBar will not be reached
  8. Navigate to MyRecipes page - app will crash
Expected Behavior

SemanticProperties.HeadingLevel should be applicable to ToolbarItem, as it functions with Button, a similar control. Whether it is applicable to other controls like SearchBar should be clarified and accurately reflected (in intellisense, for example).

Actual Behavior

SemanticProperties.HeadingLevel doesn't work for SearchBar and ToolbarItem.

Basic Information
  • Version with issue:
  • Last known good version:
  • IDE: VS2022 main
  • Platform Target Frameworks:
    • iOS:
    • Android:
    • UWP:
  • Android Support Library Version:
  • Nuget Packages:
  • Affected Devices: Pixel 4a

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the Android behavior using StartingPage.xaml and MyRecipesPage.xaml with SemanticProperties.HeadingLevel, a physical Pixel 4a, and TalkBack. Start by tracing how heading semantics are applied to SearchBar and ToolbarItem; done means SearchBar behavior is clarified or corrected and ToolbarItem no longer crashes while exposing the expected heading behavior.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.