accessibility: screen-reader (text-to-speech) in menu

As we are thinking about localization in #247, I was also thinking about further accessibility features.

I think our menu-based system and the fact it can be controlled with hardware buttons may be good for blind users, that is; if we have some kind of simple hook that passes the highlighted menu item to a to something like picotts or festival, navigation would become fairly easy even when you can't see the screen.

This is not an immediate priority but I think a hackable project like ours could make an impact here, potentially.

Assigned to
2 years ago
5 months ago

~ollieparanoid 5 months ago

It would be great to have proper screen reader support out of the box in one of the UIs on linux mobile and Sxmo seems like a great candidate for it. The demo with numen also looks impressive: https://lists.sr.ht/~mil/sxmo-devel/%3C20221108215538.rhg6ja4m6nfv62s3%40trantor%3E

An issue in the postmarketOS tracker was recently created showing interest in accessibility features, so if somebody is interested in implementing this or discussing ideas, consider reaching out there: https://gitlab.com/postmarketOS/pmaports/-/issues/2321

Regarding the keeping-it-lightweight aspect, maybe the screenreader feature could be implemented optionally (and for pmOS users would chose whether to enable it or not during the installer in the future?)

I've added this issue to: https://wiki.postmarketos.org/wiki/Accessibility#Related_issues

~earboxer 5 months ago

90% of this would be to use an accessible picker in place of bemenu. (read the title, then read the currently selected item)

Sxmo would need an env variable to switch the menu command.

Other things that could already be done:

  • switch SXMO_TERMINAL to an accessible terminal emulator (this exists, right?)--or perhaps one with brltty set up in it?
  • set KEYBOARD_ARGS to something that would pipe typed keys into espeak or similar?
  • override the inputhandler hook to announce what each gesture is doing?
  • throw together a script for reading the status...

(After getting these tasks done, pmos could make another package to ship these overrides)

All we need is someone who is willing to do the work and someone who is able to determine it works adequately.

Register here or Log in to comment, or comment via email.