My friend @TheQuinbox has been working on an ebook reader for blind people called Paperback (github.com/trypsynth/paperback). So far it's all written in C++, using wxWidgets as the GUI toolkit. Now Quin is working on making it a Rust/C++ hybrid, with the UI still in C++ using wx. As far as we know, the Rust GUI ecosystem isn't nearly ready to support a desktop app like this, with perfect screen reader accessibility and native-feeling keyboard behavior.
@Quin

reshared this

in reply to Matt Campbell

Quin says Paperback uses the following widget types: "a menu bar, a tab control/notebook, rich edit, a tree view, both single and multi-column listviews, checkboxes, spinners, combo boxes, and a few others".

So, Rust GUI toolkit developers, we have a lot of work to do. I can implement the necessary things in AccessKit, and contribute to one toolkit, but I can't fill this gap alone.

André Polykanine reshared this.

in reply to Matt Campbell

Just noticed Dioxus 0.7 is out. Their Blitz native renderer is mentioned in the release notes as a WebView alternative, and specifically calls out accessibility support. They also publish a bunch of unstyled widgets that seem to be at least partially accessible.

I haven't investigated either of these, other than poking at their widget samples and noting at least some ARIA support, but plan to soon. My current Dioxus projects are all web-based, but Blitz is definitely on my radar now for native.

That said, I don't know whether Paperback's widget subset is supported, but my hope with something like Blitz is that we could get a web-like experience without some of WebView's papercuts (E.g. no saving/restoring of cursor position) and that implementing new widgets is easier in something like RSX.

Peter Vágner reshared this.