Skip to content

Improve TalkBack support in the story viewer - #1986

Open
mehranlatifi83 wants to merge 1 commit into
DrKLO:masterfrom
mehranlatifi83:feature/story-accessibility
Open

Improve TalkBack support in the story viewer#1986
mehranlatifi83 wants to merge 1 commit into
DrKLO:masterfrom
mehranlatifi83:feature/story-accessibility

Conversation

@mehranlatifi83

@mehranlatifi83 mehranlatifi83 commented Jul 18, 2026

Copy link
Copy Markdown

Summary

This makes the existing story viewer controls and interactive story content usable with TalkBack.

Accessible story controls

  • The story surface announces the current position, for example Story, 2 of 5.
  • Previous and Next are exposed as TalkBack actions on the story surface. Each action is only present when a story exists in that direction.
  • Video stories expose Play and Pause as TalkBack actions. The action pauses or resumes both the video player and story progress. It is not exposed for photo stories.
  • Video stories expose an adjustable timeline. It announces elapsed and total time using the same accessibility format as PhotoViewer, and TalkBack adjustment actions seek through the video.
  • The Like control announces whether the story is liked and includes the reaction count when available.
  • The Like control also exposes a Reactions action that opens the reaction picker.
  • Repost controls include their share count when available.
  • Story view counts are announced on the views control.
  • In the story viewers list, likes now announce the viewer's name, and reactions with custom emoji announce the emoji itself instead of unreadable internal data.
  • Privacy, comments, paid star reactions, and live microphone mute or unmute controls have readable labels. The microphone label updates after its state changes.

Accessible story content

  • Story headers announce the story owner. Repost and member attribution shown in the header is also exposed to TalkBack.
  • Captions are read as text and expose Expand or Collapse through the existing click action.
  • Links, hashtags, and mentions in captions are available through the TalkBack links menu. Activating a link goes through the same handling as a visual tap, so hashtags open story search, mentions open the profile, and web links open with the usual confirmation.
  • Reposted stories always announce their source, and the original story's caption when it is available, in addition to the local caption. When there is no local caption, the caption area's click action is labeled View Story (or Open Message for channel post reposts) and opens the source directly, matching what a tap does visually.
  • Stories with music announce the track and artist, and expose a TalkBack action that opens the same music menu shown on tap (save to Saved Messages, add to profile).
  • Text placed on a story in the editor is announced where the text is still available on the device, that is the user's own uploading stories and edit drafts. For received stories the text is rendered into the media itself and is not available to any client as data.
  • Channel post, link, venue, location, and gift media areas have readable descriptions. Activating them with TalkBack opens their existing destination directly instead of showing the visual confirmation hint first.
  • Suggested reaction widgets announce the reaction emoji and can be activated normally.
  • Weather widgets announce their emoji and temperature.

All of these additions use the existing story UI and existing Telegram strings.

@mehranlatifi83
mehranlatifi83 force-pushed the feature/story-accessibility branch 2 times, most recently from be57708 to fd88438 Compare July 25, 2026 14:59
@mehranlatifi83
mehranlatifi83 force-pushed the feature/story-accessibility branch from 6749722 to 9834922 Compare August 3, 2026 03:09
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