Skip to content

Add keyboard message selection for screen reader users#30947

Open
rezabakhshilaktasaraei wants to merge 2 commits into
telegramdesktop:devfrom
rezabakhshilaktasaraei:acc-history-list
Open

Add keyboard message selection for screen reader users#30947
rezabakhshilaktasaraei wants to merge 2 commits into
telegramdesktop:devfrom
rezabakhshilaktasaraei:acc-history-list

Conversation

@rezabakhshilaktasaraei

@rezabakhshilaktasaraei rezabakhshilaktasaraei commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Built on top of #30948 (the message-history action layer) - the first commit here is that PR; this one adds the second commit.

Keyboard multi-selection over history messages for screen reader users (screen-reader mode only, active only while the message list itself has keyboard focus):

  • Ctrl+Space toggles selection of the focused message - the keyboard way into selection mode, from an empty selection.
  • While any message stays selected, plain Space keeps toggling the focused row - mirroring how single clicks work for sighted users once selection is active - and with nothing selected it plays/pauses the focused media, as before. Escape clears the selection as usual, and Space reverts to play/pause.
  • Shift+Up/Down moves the focus and extends/shrinks the selection as a contiguous range, Explorer-style (anchor-based, re-anchoring safely around the unread bar row).
  • All mutations go through the same changeSelectionAsGroup paths mouse selection uses (selection cap, album atomicity, service-message exclusion), with the same repaint / top bar / announcement follow-ups.
  • Clearing the last selected message used to move focus into the composer (updateTopBarSelection / listSelectionChanged); with a screen reader active the list keeps focus, so keyboard users are not yanked out of the history mid-navigation.

HistoryInner and HistoryView::ListWidget (scheduled, pinned, replies, topics) get intentionally parallel implementations.

@rezabakhshilaktasaraei rezabakhshilaktasaraei changed the title Support screen reader focus and selection in message history Add keyboard message selection for screen reader users Jul 8, 2026
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