Java
Java Swing
- How to Support Assistive Technologies in Oracle's Java Tutorials. This tutorial explains the basics, presents the testing tool Monkey and briefly describes the essential methods, classes and interfaces in the Java Accessibility API.
- IBM Guidelines for Writing Accessible Applications Using 100% Pure Java™ (version 2.4, 26 January 2004).
- Google: Access Bridge Explorer: source code repository (on GitHub) of a Windows application that can be used to examine the accessbility of Java applications that use the Java Access Bridge. The GitHub repository has not been updated since 2016 (accessed on 16.05.2022).
- Package javax.accessibility (in module java.desktop) and Package com.sun.java.accessibility.util (in module jdk.accessibility) in the Java Platform SE 18 documentation.
- Package javax.accessibility in the Java Platform SE 10 documentation.
- Package javax.accessibility in the Java Platform SE 9 documentation.
- Package javax.accessibility in the Java Platform SE 8 documentation.
- Package javax.accessibility in the Java Platform SE 7 documentation.
-
Accessibility for Java:Essential Accessibility Programming Practices(IBM developerWorks, 2014) -
Java ATK Wrapper: Making Use of ATK Function Pointers (thisMagpie, 29 June 2015).
JavaFX
- Accessibility Exploration, OpenJDK Wiki (accessed on 16.05.2022).
- Keyboard Navigation, OpenJDK Wiki (accessed on 16.05.2022).
Java: Other
- The Able to Include Accessibility Layer
for Java is available under the Apache License, Version 2.0 and
enables applications to work with the
Able to Include context-aware accessibility layer,
which was developed to
improve the day-to-day life of people with IDD by understanding their surroundings and helping them to interact with the information society
. (GitHub repositories last updated in 2017; accessed on 16.05.2022.)See also the Accessibility Layer API documentation.These tools were developed by the Able to Include project, which ran from March 2014 till February 2017. Feigenbaum, Barry; Nichols, Sueann: Accessibility Design and Coding Guidelines for Java Swing and SWT GUI Development, IBM Community.
Qt
- Qt 5.15: Accessibility, Qt Documentation (no date; last accessed on 16.05.2022).
- Accessibility for QWidget Applications, Qt Documentation (no date; last accessed on 16.05.2022).
- Accessible QML Type, Qt Quick 6.3.0 (no date; last accessed on 16.05.2022).
- Vattekar, Geir: L'accessibilité dans Qt, Developpez.com, 22.03.2009, updated on 01.08.2011. French translation of an article originally published in English.
- Vattekar, Geir:
Accessibility in Qt (2007)Accessibility in Qt. - Gladhorn, Frederik (fregl): Plasma Next Accessibility (7 July 2014).
-
Qt AT-SPI 2 Bridge,
KDE Community Wiki, last updated in June 2011 (accessed on 16.05.2022).
See also Qt AT-SPI2 bridge in KDE's GitHub mirror, which was last updated in 2016. - Gladhorn, Frederik (fregl): qt-at-spi 0.3 released, Frederik Gladhorn (fregl) (FSFE blog), 12.04.2012.
GTK+
GTK+ is a multi-platform toolkit for creating graphical user interfaces
.
The GNOME developer documentation explains the relationship between GTK+ and ATK as follows:
GAIL (GNOME Accessibility Implementation Library)
is an implementation of the accessibility interfaces defined by ATK.
GTK is a toolkit which is already mapped to ATK by the GAIL module.
Note that this applies only to GNOME. According to
this message to the GTK-devel mailing list (April 2012)
and
GNOME bug 303304,
GTK+ does not support MSAA or any other accessibility API that works on Windows (IAccessible2, Windows UI Automation).
- ATK - Accessibility Toolkit (Gnome documentation).
- GTK+ and ATK - A Foundation for GNOME Accessibility, GNOME Accessibility Team (GNOME Wiki), last updated in 2011 (accessed on 16.05.2022).
- Using GTK+ and ATK to Build Accessible Applications, GNOME Accessibility Team (GNOME Wiki), last updated in 2011 (explicitly no longer being maintained; accessed on 16.05.2022).
- mclasen: Accessibility in GTK 4, GTK Development Blog, 21.10.2020.
- GTK+ for Windows Runtime Environment Installer (makes no mention of accessibility; accessed on 16.05.2022).
- GTK+ for Windows (MinGW) SourceForge (makes no mention of accessibility; last updated in 2015; accessed on 16.05.2022).
wxWidgets
Smart, Julian: "Accessibility in wxWidgets" (February 2003; last accessed on 16.05.2022).
Lazarus Component Library (LCL)
LCL Accessibility in the Free Pascal Wiki contains basic information on the accessibility of standard controls and on making custom controls accessible. (Accessed on 19.08.2022.)
Windows Presentation Foundation and UI Automation
- Microsoft UI Automation, Microsoft Docs, 15.09.2021.
- WPF Samples: Accessibility, Microsoft (on GitHub).
- Bruney, Alvin: A Pragmatic Approach to WPF Accessibility, Code, 18.06.2020.
General Guidelines
- Hinton, Suz: A guide to coding accessible developer tools, Increment, Issue 3, Fall 2017 (last accessed on 16.05.2022).
Testing Desktop Applications
-
BIT inklusiv BITV-Softwaretest,
BIT inklusiv (no date; accessed on 30.06.2022).
See also the accompanying Werkzeugliste für den BITV-Softwaretest. - Bornemann, Brigitte:
Der BITi-Test für barrierefreie Software,
BIT inklusiv (no date; accessed on 30.06.2022).
Originally published on fronta11y on 17.05.2018. -
Guidance on Applying WCAG 2.0 to Non-Web Information and Communications Technologies (WCAG2ICT)
(W3C Working Group Note 5 September 2013).
This is not a test methodology but a document that translates the criteria from WCAG 2.0 to desktop applications. - Akire, John: Accessibility Insights for Windows, Engineering@Microsoft (blog), 13.12.2021.
- Amoli: Accessibility testing toolkit for desktop applications, UX Collective (on Medium), 16.11.2018.
- How to Test a Desktop Application?, Kualitatem, 29.05.2014. (This blog post does not discuss accessibility.)
LibreOffice Accessibility
- LibreOffice Developer's Guide: Chapter 17 - Accessibility, The Document Foundation Wiki (accessed on 31.05.2022).
-
Visual Class Library (VCL),
LibreOffice Modules (accessed on 31.05.2022).
Quoted from the documentation page:Visual Class Library (VCL) is responsible for the widgets (windowing, buttons, controls, file-pickers etc.), operating system abstraction, including basic rendering (e.g. the output device). (…) VCL provides a graphical toolkit similar to gtk+, Qt, SWING etc.
This page does not discuss accessibility. -
winaccessibility / Windows Accessibility Bridge,
LibreOffice Modules (accessed on 31.05.2022).
The bottom of the page links to AccProbe (Linux Foundation).) -
Accessibility Support for LibreOffice,
LibreOffice Modules (accessed on 31.05.2022).
(This page is almost empty.) - Accessibility in LibreOffice, LibreOffice 7.3 Help (accessed on 24.05.2022).
- Saunders, Mike: Welcome gla11y, the user interface accessibility checker!, The Document Foundation Blog, 07.05.2018.
- Vaughan-Nichols, Steven:
IBM throws its source code and support behind OpenOffice,
ZDNet, 14.07.2011.
In 2011, IBM announced it was donating code from the Lotus Symphony office suite to Apache OpenOffice. This included the implementation of the iAccessible2 accessibility API and the Side Panel UI. (LibreOffice later borrowed this code from Apache OpenOffice.) - Apache OpenOffice 4.1 to Bring Enhanced Accessibility Support, Apache OpenOffice blog, 15.11.2013.
- AOO IAccessible2, Apache OpenOffice Community (wiki), last updated on 19.11.2013.
- IAccessible2 and OpenOffice:
- Timmermann, Malte: OpenOffice.org and IAccessible2, CSUN 2008.
-
Merging Lotus Symphony: Allegro moderato,
Apache OpenOffice blog, 21.01.2013.
This blog post is not primarily about IAccessible2 but about other aspects of mering Lotus Symphony code into OpenOffice. A section near the bottom states,IAccesible2 is an interface used by "assistive technologies" (screen readers, etc.) to help persons with disabilities use desktop applications. We're bringing the IAccesible2 support from Symphony into OpenOffice.
- IAccessible2 (Wikipedia).
- IAccessible2 API Documentation Version 1.3.
Tenders by The Document Foundation
- Effenberger, Florian: Tender for Automated a11y based UI testing (#201512-04), The Document Foundation Blog, 16.12.2015.
- Vignoli, Italo: Tender to Implement Accessibility Improvements (#201704-01), The Document Foundation Blog, 27.04.2017.
- Tender to implement C++ accessibility tests (#202110-01), The Document Foundation Blog, 13.10.2021.
Other Links
- Accessibility, freedesktop.org (last updated in February 2022; accessed on 16.05.2022).
- AT-SPI2, freedesktop.org (last updated in May 2021; accessed on 16.05.2022).
- IAccessible2 API, Linux Foundation, last updated in 2013 (accessed on 16.05.2022).
-
AccProbe: The Accessibility Probe,
Open Accessibility Work Group (Linux Foundation), last updated on 25.04.2011 (accessed on 31.05.2022).
Description quoted from the page:The Accessibility Probe (AccProbe) is a standalone, Eclipse Rich-Client Product (RCP) application that provides a view of the Microsoft Active Accessibility (MSAA) or IAccessible2 hierarchy of a currently running application or rendered document and of the properties of the accessible objects of that application or document.
- Saunders, Mike: Welcome gla11y, the user interface accessibility checker!, The Document Foundation, 07.05.2018. Gla11y (which stands for Glade accessibility) is a Python script checks for accessibility issues in Glade user interface description files.
- hypra/gla11y: check accessibility of glade widgets: source code repository on GitHub (ISC licence).
- Code samples for common accessibility issues in Windows apps, Microsoft Docs (no date).
- Updegrove, Andy: More on IAccessible2, ConsortiumInfo.org, 15.12.2006.