This page is mainly intended for highlighting the current state of Accessibility in JavaFX and upcoming work.
Accessibility support for JavaFX encompasses three aspects:
- Supporting High Contrast and Theming
- Keyboard Navigation
- Accessibility APIs and Assistive Technology support
High Contrast and Theming:
Theming can be achieved using high contrast style sheet provided with FX runtime. Currently this style sheet has to be loaded manually.You can do this using:
scene.getStylesheets().add("/com/sun/javafx/scene/control/skin/caspian/highcontrast.css");
This should however be triggered to auto-load when the platform theming is changed. This will require a triggering mechanism from glass.
Keyboard Navigation:
See the document that lists all JavaFX UI Controls including their shortcuts and keyboard navigation
Accessibility API and Assistive Technology support
The accessibility architecture is based on Microsoft UI Automation which helps provide us a
low overhead path to implementation on Windows. The design scales well to NSAccessibility protocol on Mac platform and AT-SPI on Linux.
<Insert image FX Accessibility Architecture.png>
- Architecture
- Supported Assistive Technologies
- APIs
- What works today and how to scale this further
- Testing