Skip to content

Android support for link to announce as link and not as button in A11Y #102535

@MaruQuarky

Description

@MaruQuarky

Use case

On the current documentation of Flutter for link property of SemanticsProperties class, the links were read as button not as links.

If non-null, indicates that this subtree represents a link.

iOS's VoiceOver provides users with a unique hint when a link is focused. Android's Talkback will announce a link hint the same way it does a button.

As documented in the Android Accessibility Help page, the design now allows links and hyperlinks to be read as links:

Design

When using TalkBack to speak text containing a hyperlink, a well implemented user interface produces an auditory icon as the hyperlinked text is spoken, and the linked text appears in the "Links" sub-menu of TalkBack's local context menu.

Previously, a GitHub ticket was filed regarding this issue but was close because it was WAI per this comment:

This was addressed in another issue also for customer: money (g3) : #36306
Link was specifically used as a button since android doesn't offer a link option in the a11y class name.
Further reference:

I think this is WAI since we intentionally did this because Android doesn't have an explicit 'link'.

Proposal

Support to announce links and hyperlinks as links not as buttons in A11Y.

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work lista: accessibilityAccessibility, e.g. VoiceOver or TalkBack. (aka a11y)c: new featureNothing broken; request for a new capabilityc: proposalA detailed proposal for a change to Flutterframeworkflutter/packages/flutter repository. See also f: labels.platform-androidAndroid applications specificallyr: fixedIssue is closed as already fixed in a newer versionteam-accessibilityOwned by Framework Accessibility team (i.e. responsible for accessibility code in flutter/flutter)triaged-accessibilityTriaged by Framework Accessibility team

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions