Add screen reader announcements for adding/removing articles to/from favorites via keyboard shortcut #57

Closed
opened 2026-07-16 08:20:16 -07:00 by serrebi · 1 comment
Owner

Add screen reader announcements when a user adds or removes an article to/from favorites using the Ctrl+D keyboard shortcut.

Checklist:

  • Screen reader announces "Added to favorites" when Ctrl+D is pressed on an article not in favorites.
  • Screen reader announces "Removed from favorites" when Ctrl+D is pressed on a favorited article.
  • Add a dedicated combobox for this event in Settings > Announcements.
Add screen reader announcements when a user adds or removes an article to/from favorites using the Ctrl+D keyboard shortcut. Checklist: * Screen reader announces "Added to favorites" when Ctrl+D is pressed on an article not in favorites. * Screen reader announces "Removed from favorites" when Ctrl+D is pressed on a favorited article. * Add a dedicated combobox for this event in Settings > Announcements. <!-- forgejo-github-sync: issue github=serrebidev/BlindRSS#70 -->
Author
Owner

Done in v1.107.0 — all three checklist items.

  • Ctrl+D on an unfavorited article announces "Added to favorites".
  • Ctrl+D on a favorited article announces "Removed from favorites".
  • "Favorites change" has its own combobox in Settings > Announcements, with the same None / Only speech / Only Braille / Speech and Braille modes as every other event.

Two details worth knowing:

The announcement is emitted before the row is removed in the Favorites view. Un-favoriting there drops the article from the list, so announcing afterwards would have given you silence plus a vanished row.

You were right that this needed fixing rather than being a nice-to-have: Ctrl+D changes no visible text in the row, so previously a successful toggle and a no-op were indistinguishable to a screen reader.

One thing I did not do: the Russian translations for "Added to favorites"/"Removed from favorites" are intentionally left untranslated for now. msgmerge offered "Добавить в избранное" / "Удалить из избранного" — but those are the imperative menu commands ("Add to favorites"), and announcing a command after the fact reads wrong; it should be something like "Добавлено в избранное". Rather than ship that, the strings fall back to English until a translator supplies the right form. Same for "Favorites change", which msgmerge guessed as "Изменение фильтра" ("Filter change").

Done in **v1.107.0** — all three checklist items. * Ctrl+D on an unfavorited article announces "Added to favorites". * Ctrl+D on a favorited article announces "Removed from favorites". * "Favorites change" has its own combobox in Settings > Announcements, with the same None / Only speech / Only Braille / Speech and Braille modes as every other event. Two details worth knowing: The announcement is emitted **before** the row is removed in the Favorites view. Un-favoriting there drops the article from the list, so announcing afterwards would have given you silence plus a vanished row. You were right that this needed fixing rather than being a nice-to-have: Ctrl+D changes no visible text in the row, so previously a successful toggle and a no-op were indistinguishable to a screen reader. One thing I did **not** do: the Russian translations for "Added to favorites"/"Removed from favorites" are intentionally left untranslated for now. `msgmerge` offered "Добавить в избранное" / "Удалить из избранного" — but those are the *imperative* menu commands ("Add to favorites"), and announcing a command after the fact reads wrong; it should be something like "Добавлено в избранное". Rather than ship that, the strings fall back to English until a translator supplies the right form. Same for "Favorites change", which msgmerge guessed as "Изменение фильтра" ("Filter change"). <!-- forgejo-github-sync: comment github=serrebidev/BlindRSS#70/4993945893 -->
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
serrebi/BlindRSS#57
No description provided.