Accessibility is important for a lot of users, without it they just can not use their computer.
A few important principles are to be kept in mind
- We want to make existing software accessible, and avoid dedicated software
- We need synchronization: accessibility is another way for input and output
- It should be easily available, ready to be enabled.
Accessibility support is needed in Input
Accessibility support is needed in Output
Accessibility support is needed in applications, through AT-SPI2
A Walkthrough documents the RPC and function calls details.
- GTK2/GTK3: good support, through atk (documentation), and atk-bridge from at-spi2-atk
- Qt4: only preliminary support, through qt-at-spi
- Qt5: improving, integrated in Qt5
- Java: Basics, through java-atk-wrapper
Gnome provides an Accessibility development guide
For ATK, there is a best ATK practices guide
KDE provides an Accessibility development guide
LinuxJournal proposes a HOW-TO